Scrapy中获取HTTP403后如何继续解析方法
In Scrapy, how to proceed to parse method after getting HTTP403
我正在尝试抓取 returns HTTP403(如果 JavaScript 未启用)的网站。
我尝试实施的方法是,
在 parse 方法中,Selenium 驱动程序从 response.requets.url
获取 url 并获取页面
但我面临的问题是selenium在获取HTTP403后自动关闭请求,没有进入parse方法。
这是我的代码:
class SampleSpider(scrapy.Spider):
name = "sample_spider"
start_urls = ["https://website_that_returning_403.com"]
def parse(self, response):
bot = webdriver.Chrome()
bot.get(response.request.url)
要处理 200-300
范围以外的状态,请使用 handle_httpstatus_list
spider 属性,如下所示
class SampleSpider(scrapy.Spider):
name = "sample_spider"
handle_httpstatus_list = [403]
start_urls = ["https://website_that_returning_403.com"]
def parse(self, response):
bot = webdriver.Chrome()
bot.get(response.request.url)
从 docs
阅读更多相关信息
我正在尝试抓取 returns HTTP403(如果 JavaScript 未启用)的网站。
我尝试实施的方法是,
在 parse 方法中,Selenium 驱动程序从 response.requets.url
获取 url 并获取页面
但我面临的问题是selenium在获取HTTP403后自动关闭请求,没有进入parse方法。
这是我的代码:
class SampleSpider(scrapy.Spider):
name = "sample_spider"
start_urls = ["https://website_that_returning_403.com"]
def parse(self, response):
bot = webdriver.Chrome()
bot.get(response.request.url)
要处理 200-300
范围以外的状态,请使用 handle_httpstatus_list
spider 属性,如下所示
class SampleSpider(scrapy.Spider):
name = "sample_spider"
handle_httpstatus_list = [403]
start_urls = ["https://website_that_returning_403.com"]
def parse(self, response):
bot = webdriver.Chrome()
bot.get(response.request.url)
从 docs
阅读更多相关信息