scrapy 速度优化

主要有三个设置项来控制下载器的容量:CONCURRENT_REQUESTSCONCURRENT_REQUESTS_PER_DOMAIN和 

CONCURRENT_REQUESTS_PER_IP。第一个设置项提供了一个粗略的控制,无论如何不会有超过CONCURRENT_REQUESTS数目的请求被并发下载。在另一方面,如果你的目标域名只是一个或者少数的几个,那么CONCURRENT_REQUESTS_PER_DOMAIN可能就会提供对并发请求数目的更进一步的限制。不过如果你设置了CONCURRENT_REQUESTS_PER_IP,那么CONCURRENT_REQUESTS_PER_DOMAIN就会被忽略,这时的限制会是针对每个IP的。在很多域名都反射一个服务器的时候,这会帮你避免过度地访问远程服务器。

为了使我们的分析工作简单一点,我们把CONCURRENT_REQUESTS_PER_IP保持为默认值(0),这样就禁用了对每个IP的限制,并且把CONCURRENT_REQUESTS_PER_DOMAIN设置成一个很大的值(1000000) 。这样的设置实际上就是禁用了这些限制,这样下载器的并发请求数目就只由CONCURRENT_REQUESTS来控制了。

---------------------------------------------以上参考参考:https://blog.csdn.net/q_an1314/article/details/51245011

另外一个重要参数:DOWNLOAD_DELAY 

下载器在下载同一个网站下一个页面前需要等待的时间。该选项可以用来限制爬取速度, 减轻服务器压力。同时也支持小数:

建议视爬取网站来定,如果是大型数据网站或已知有反爬虫措施网站,使用ip池的情况下1-2秒之间,

否则就看你的爬取程度和网站来定(适当增加并发而不要充满恶意)

代理池的使用在前面

最后也是最重要的:优化你的代码,少跑非法链接,适当合并爬虫,对于可能报错的地方进行异常处理等

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值