scrapy 能设置采集时间间隔吗

scrapy 能设置采集时间间隔吗,第1张

第一步:打开火车头采集器,进入文件保...

1

第二步:左侧任务运行时线程设置

2

第三步:修改发布内容线程设置,图示设...

3

第四步:修改发布时间间隔,图示设置为...

有些用户反映在爬虫的过程中,使用了代理IP但是依旧出现请求失败的情况,这到底是怎么一回事,其实如果爬虫使用不当或者用了低质量的代理IP都会导致上述情况的发生。

那么遇到这种情况大家也不用慌,我们可以采取以下措施:

1、放慢爬取速度,减少对于目标网站带来的压力,但会减少单位时间类的爬取量。测试出网站设置的限制速度阈值,设置合理的访问速度。

2、时间间隔访问,对于多少时间间隔进行采集,可以先测试目标网站所允许的最大访问频率,越贴近最大访问频率,越容易被封IP,这就需要设置一个合理的时间间隔,既能满足采集速度,也可以不被限制IP。

3、使用高匿名代理IP,对于python网络爬虫来说,有时候业务量繁重,分布式爬虫是最佳的增强效率方式,而分布式爬虫又急切需要数目众多的IP资源,这一点免费IP是满足不了的,并且免费代理一般不提供高匿名的代理IP,因此不建议大家使用免费的代理IP。高匿名代理IP可以完全隐藏用户的IP及信息,让目标网站不会有丝毫的察觉,无论是用来做什么工作都可以放心使用。

4.多线程爬取,多线程是为了同步完成多项任务,通过提高资源使用效率来提高系统的效率。线程是在同一时间需要完成多项任务的时候实现的。也就是使用多个爬虫同时去抓取。人多力量大,爬虫也是如此,这样可以极大地提高爬取速率。

文章部分内容源于网络,联系侵删*

使用wrk施压 1000 并发连接, 采集间隔1s实时数据图表很快体现出来了 1002 ,采集间隔15s的数据是 781 ,最low的是阿里云SLB的监控数据,1分钟后才展示出最大活跃连接数 792 。

时间在 03:30 数据是一致的

1.在服务器上也可以使用 netstat -apn|grep 'nginx: worker'|wc -l 查看nginx连接并发数;

2.如果nginx启用了 --with-http_stub_status_module 模块也可以使用 curl -s curl http://127.0.0.1/nginx_status | grep connections 查看。

3.我上图nginx采集使用的是 nginx-module-vts

4.来张启用 --with-http_stub_status_module 模块数据采集的监控图表(采集间隔1s)


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11282396.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-14
下一篇 2023-05-14

发表评论

登录后才能评论

评论列表(0条)

保存