4
2Captcha.com
サービスを使用してcaptchaを解決しようとしています。まず、キャプチャ画像を保存しています。Scrapyリクエストでcaptcha画像をアップロード
urllib.urlretrieve(captcha_image_link, 'captcha.jpg')
次は、画像をサーバーにアップロードして認識する必要があります。プレーンな要求をそのまま使用する
files = {'file': open('captcha.jpg', 'rb')}
payload = {'key': TWOCAPTCHA_APIKEY, 'method': 'post'}
request = requests.post('http://2captcha.com/in.php', files=files, data=payload)
しかし、どのようにScrapyで同じ要求をするのですか?つまり、画像ファイルをPOSTリクエストに添付する方法は?これは可能ですか?もしそうでなければ、Scrapyスパイダーの中でプレーンなPOSTリクエスト(そしてurlretrieveも同様)を使うのはあまりにも悪い考えかどうかを知りたいですか?
なぜあなたはscrapyでリクエストする必要がありますか。この場合、解決されたcaptchaの応答がほしいので、次の要求を行うことができます。だから '輸入依頼' – surfer190
私は自分自身でそれを明確にしたいだけです - Scrapyスパイダーの中で '要求 'を使うのは安全で正しいのですか?プレーンな要求はそれを遅くするだろうか? – sky
場合がございます。あなたはこの興味深い記事を読むことができますが、私はそれが「正しい」か「間違っている」かについて話すことはできません:http://www.scrapinginsider.com/2016/01/scrapy-urllib2-requests-beautifulsoup-lxml.html – surfer190