请问scrapy中如何设置request的重试次数

scrapy版本:1.1.2
python 版本:3.5

在使用scrapy抓取数据的时候使用了代理IP,难免会遇到代理IP失效的情况。

因为对数据完整性要求较高,请问如何设置只要没有成功的返回response则把任务重新放进Request队列中去继续爬取?

阅读 17.9k
2 个回答

可以使用scrapy自带的scrapy.downloadermiddlewares.retry.RetryMiddleware中间件,然后通过这几个参数进行配置:
RETRY_ENABLED: 是否开启retry
RETRY_TIMES: 重试次数
RETRY_HTTP_CODECS: 遇到什么http code时需要重试,默认是500,502,503,504,408,其他的,网络连接超时等问题也会自动retry的

新手上路,请多包涵

你这个是超时

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题