您的位置:首页 > 新闻资讯 >文章内容
采集数据如何控制爬虫抓取的频率?
来源:互联网 作者:admin 时间:2019-02-26 15:40:53

  采集数据如何控制爬虫抓取的频率?为什么要控制爬虫的抓取频率,这是因为如果爬取太快,会增加网站服务器的负载,而且过快的采集,会被网站检测到,因此为了不被发现,势必要控制爬虫抓取的频率。


  在robot.txt协议里面定义Crawl-delay来确定抓取的频率也是一种网站的通用的做法,对于一般的抓取而言,10到20秒抓取一次是一个比较保险的频率,也有提出10*t的抓取间隔(t是download时间)比较合理。下面来看看具体的方案:


采集数据如何控制爬虫抓取的频率?


  1.最快速的方案-使用HTTP代理


  使用HTTP代理+异步IO,每秒可以处理100左右的HTTP请求(根据机器配置和网络而定)。但是免费的HTTP代理一是需要自己来抓,二是并不稳定。如果使用付费的HTTP代理,这个需要钱了。


  2.更简单的方案-多线程


  每次开2-4个线程来访问页面,也就是同时只能处理2-4个HTTP请求,然后一直跑下去,如果需要爬去的数据量不多,这个是最简单的解决方案。比如处理一次HTTP请求需要200ms,每次处理4个请求,一秒可以抓取20个页面,一天可以抓取20*60*60*24=1728000。


  3.最合适的方案-分布式


  使用多线程+分布式,比如一台机器抓取一天可以抓取172w数据,两台就是344w数据。


  4.最终解决方案-分布式+HTTP代理


  根据之前爬去拉勾网的时实践,同一个IP同时发送4个HTTP请求是不会被ban的,所以一个IP可以保证4个HTTP并发量,如果有10个HTTP代理,每秒就可以获取200个页面,一天可以爬去200*60*60*24=17280000个页面。最好是分布式不使用代理,因为每加一台机器,就相当于多了一个IP。


  具体的一个IP的并发量需要自己测试,不过最好一个IP同时只处理一个HTTP连接。


  上文分析了在采集数据时,如何控制爬虫抓取的频率的问题,最好的方案是使用分布式以及HTTP代理,代理可以使用代理精灵,因为IP可以使用全国的,范围比较广,数量自然多,使用效果也好。


相关文章内容简介
推荐阅读
  • 11 2019-06
    搭建移动设备使用的代理服务器

    搭建移动设备使用的代理服务器,这与pc端有什么不同呢?移动设备想要访问位于局域网中的某个特定设备上搭建的服务,需要通过代理服务器来实现,针对不同操作系统搭建代理服务器有不同

  • 17 2020-03
    在线代理ip的白名单是什么

    代理ip是我们最常用的更换ip软件,但是代理ip在没有授权白名单的情况下是无法使用的,如果没有授权的情况下访问网页会跳转到一个需要输入账号和密码的页面,需要输入账号和密码才能正常

  • 25 2019-03
    如何利用免费IP代理池刷量

    刷量,大家也不少见了,像视频播放量,文章阅读量,商品销售量等等,这些其实都是可以刷出来的,这么看来是不是刷量蛮简单的,想刷就刷。

  • 10 2020-02
    收费与付费的代理IP怎么选

    现在的代理IP分为免费和收费的,很多用户在使用的时候不知该怎么选。大部分用户会认为免费代理是比较合适的,但是其实不然。那么,收费与付费的代理IP怎么选呢?

  • 15 2019-06
    提示代理服务器没有响应

    提示代理服务器没有响应怎么处理?有时候我们的浏览器设置代理服务器使用,但是呢,却打不开网页,还提示代理服务器没有响应,这是怎么回事?如何解决呢?

  • 19 2019-12
    使用代理IP需要注意的事项!

    使用代理IP需要注意的事项!使用代理ip​的人现在越来越多,许多用户都喜欢利用代理ip来帮助他们进行营销或者爬虫等等活动,但是在使用的过程当中有许多需要我们注意的事项你又了解吗?机

在线咨询
大客户经理
大客户经理
1829380381
13316264505

大客户经理微信

微信公众号

微信公众号

回到顶部