2017-07-27 19 views
0

ターゲットURLから、キャプチャ付きウェブサイトの確認ページである別のURLへのリダイレクトを停止するにはどうすればよいですか?ここでScrapy:キャプチャ付き確認ページへのリダイレクト

は、以下の私のコードです:

yield scrapy.Request(meta={'handle_httpstatus_list': [302], 'dont_redirect': True, 'redirect_enabled':False},url=url, callback=self.profileCategoryPages) 

今ではWebページから別のWebページに私をリダイレクトします。私はなぜそれが起こっているのか分からない。私が初めてそれを走らせたときに起こることはありませんでしたが、2度目に走り回って何度も走った時、私はそれが別のウェブページにリダイレクトされるだけです。

Taggetページ:このページにリダイレクト http://www.profilecanada.com/browse_by_category.cfm/

http://www.profilecanada.com/confirmReqPage.cfm

はあなたの助けをありがとう!

+0

クロールログを投稿できますか?あなたは 'scream crawl spider --logfile output.log'または' scrapy crawl spider 2> 1を使ってこれを行うことができます。 tee output.log'コマンド(後で出力を画面とファイルに出力します)。あなたはおそらくリダイレ​​クトされていませんが、ウェブサイトはあなたをボットとしてマークしており、あなたを信用していないので、あなたに邪魔されたコンテンツを示しています。 – Granitosaurus

+0

はい。私はウェブサイトへのアクセスがブロックされていることが分かりました。あなたに何か提案がありますか?ありがとうございました。 –

+0

非常に広い問題です。まず、あなたはなぜキャプチャゲットされているのか把握する必要があります。なぜ彼らはあなたがボットだと思いますか?あなたの要求は人間に見えますか?ユーザーエージェントヘッダーと他のヘッダーをチェックすることから始めることは良い考えです。彼らはあなたが高速にクロールするので、あなたはボットだと思いますか?さて、いくつかの遅延を追加したり、プロキシを取得したりする必要があります。 – Granitosaurus

答えて

0

ブロックされている理由は、ウェブサイトからページをリクエストするときに遅延値がないということです。また、私はスパイダーを独立したスクレーパープログラムとして作成しました。したがって、変更するためのsettings.pyはありません。私がやったことはこれです:

  1. 実行することにより、projecyとしてスクレーパーを作成します。

    scrapyのstartprojectのを

  2. は私の新しく作成したプロジェクト内にあるクモのフォルダに私の以前に作成したプログラムのスクレーパーを追加しました

  3. Modiy settings.py:

    DOWNLOAD_DELAY =、 CONCURRENT_REQUESTS = 20、 CONCURRENT_REQUESTS_PER_DOMAIN = 1、 DOWNLOAD_TIMEOUT = 30

今では動作します!

関連する問題