8
投稿データのみをサポートするウェブサイトをクロールしたいですか?すべてのリクエストの照会パラメータ を投稿データに送信します。これを達成する方法は?スクラムスパイダーのstart_urlsで投稿データを送信する方法
投稿データのみをサポートするウェブサイトをクロールしたいですか?すべてのリクエストの照会パラメータ を投稿データに送信します。これを達成する方法は?スクラムスパイダーのstart_urlsで投稿データを送信する方法
POSTリクエストは、scrapyのRequestまたはFormRequestクラスを使用して行うことができます。
また、start_urls
プロパティの代わりにstart_requests()
メソッドを使用することを検討してください。
例:
from scrapy.http import FormRequest
class myspiderSpider(Spider):
name = "myspider"
allowed_domains = ["www.example.com"]
def start_requests(self):
return [ FormRequest("http://www.example.com/login",
formdata={'someparam': 'foo', 'otherparam': 'bar'},
callback=self.parse) ]
お役に立てば幸いです。
しかし、 'Request'や' FormRequest'のどのパラメータを私は投稿データを通過させるべきですか? 'body'または' formdata'ですか? – Friedmannn
投稿データに 'formdata'を使うべきです。 – lgaggini
あなたはどのようにURLのリストを使ってそれをしますか? – CodeGuru