scrapy版本:1.1.2
python 版本:3.5
在使用scrapy抓取数据的时候使用了代理IP,难免会遇到代理IP失效的情况。
因为对数据完整性要求较高,请问如何设置只要没有成功的返回response则把任务重新放进Request队列中去继续爬取?
scrapy版本:1.1.2
python 版本:3.5
在使用scrapy抓取数据的时候使用了代理IP,难免会遇到代理IP失效的情况。
因为对数据完整性要求较高,请问如何设置只要没有成功的返回response则把任务重新放进Request队列中去继续爬取?
4 回答4.4k 阅读✓ 已解决
4 回答3.8k 阅读✓ 已解决
1 回答3k 阅读✓ 已解决
3 回答2.1k 阅读✓ 已解决
1 回答4.5k 阅读✓ 已解决
1 回答3.8k 阅读✓ 已解决
1 回答2.8k 阅读✓ 已解决
可以使用scrapy自带的
scrapy.downloadermiddlewares.retry.RetryMiddleware
中间件,然后通过这几个参数进行配置:RETRY_ENABLED
: 是否开启retryRETRY_TIMES
: 重试次数RETRY_HTTP_CODECS
: 遇到什么http code时需要重试,默认是500,502,503,504,408,其他的,网络连接超时等问题也会自动retry的