Scrapy-Request回调函数未调用

本文最后更新于:2020年9月27日 晚上

1
2
# 在Spider.parse()中
scrapy.Request(url, headers=self.header, callback=self.parse_detail)

调试的时候,发现回调函数parse_detail没有被调用
出现这个问题的原因是,urlSpider Middleware中间件过滤掉了
默认中间件会过滤掉那些不在allowed_domains列表中的请求request

两种方法能够使 requests 不被过滤:

  1. 在 allowed_domains 中加入 url
  2. 在 scrapy.Request() 函数中将参数 dont_filter=True 设置为 True

本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!