Scrapy:使用验证码重定向到确认页面

时间:2017-07-27 10:03:02

标签: redirect web-scraping scrapy scrapinghub

如何停止从目标网址重定向到另一个网址,这是一个带验证码的网站的确认页面?

以下是我的代码:

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

现在它将我从网页重定向到另一个网页。我不知道为什么会这样。当我第一次运行它时没有发生,但是当我第二次运行并且一次又一次地运行它时,我得到的只是它被重定向到另一个网页。

Tagget页面: http://www.profilecanada.com/browse_by_category.cfm/

重定向到此页面: http://www.profilecanada.com/confirmReqPage.cfm

感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

我认为我被阻止的原因是我在从网站请求页面时没有延迟值。另外,我创建了蜘蛛作为独立的刮刀程序,因此,没有settings.py可以修改。我做的是这个:

  1. 通过运行:

    创建一个刮刀作为项目

    scrapy startproject

  2. 将我之前创建的程序刮刀添加到我新创建的项目中的spider文件夹

  3. Modiy the settings.py:

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

  4. 现在有效!