CrawlSpider クラスを使用して Web サイトをクロールしていますが、各リクエストで送信されるヘッダーを変更したいと考えています。具体的には、リファラーをリクエストに追加したいと思います。
この質問に従って、私はチェックしました
response.request.headers.get('Referer', None)
私の応答解析関数では、Referer
ヘッダーが存在しません。これは、リファラーがリクエストで送信されていないことを意味すると思います(ウェブサイトがそれを返さない限り、それについてはわかりません)。
リクエストのヘッダーを変更する方法を理解できませんでした。繰り返しますが、私のスパイダーは CrawlSpider から派生しています。CrawlSpider のオーバーライド_requests_to_follow
またはルールのコールバックの指定process_request
は機能しません。これは、その時点でリファラーがスコープ内にないためです。
リクエストヘッダーを動的に変更する方法を知っている人はいますか?