meta
является Scrapy Request
-специфических и python-requests' request не имеют meta
аргумента, следовательно, TypeError
исключение.
Чтобы использовать Splash с запросами python, прочитайте HTTP API docs, especially on render.html
, так как это то, что вы хотите использовать.
Вы хотите получить запрос GET на конечную точку /render.html
и передать целевой URL, а аргумент wait
в качестве параметра запроса, например. как это:
import requests
requests.get('http://localhost:8050/render.html',
params={'url': 'http://www.example.com', 'wait': 2})
Если вы хотите Всплеск выдать запрос POST на целевом сайте, используйте http_method
и body
аргументы:
import requests
requests.get('http://localhost:8050/render.html',
params={'url': 'http://httpbin.org/post',
'http_method': 'POST',
'body': 'a=b',
'wait': 2})
/render.html
также allows POST-ed requests to the endpoint:
Всплеск контролируется через HTTP API. Для всех конечных точек ниже параметры могут быть отправлены либо как аргументы GET, либо закодированы в JSON и POSTed с заголовком Content-Type: application/json
.
но метод по умолчанию все еще GET. Для того, чтобы сделать POST на целевой сайт, вам все еще нужно включить http_method
аргумент:
import requests
requests.post('http://localhost:8050/render.html',
json={'url': 'http://httpbin.org/post',
'http_method': 'POST',
'body': 'a=b',
'wait': 2})
Но я должен отправить запрос POST – parik
ли вы имеете в виду, что Всплеск должен выдать запрос POST на целевом сайте? Если да, есть ['http_method' и' body' аргументы] (https://splash.readthedocs.io/en/stable/api.html#render-html), доступные с помощью '/ render.html' –
мне нужно «ЖДИТЕ» в минуту мои запросы POST – parik