您的位置: 首页 > 新闻资讯 > 正文

如何有效控制爬虫速度?

发布时间:2020-01-10 14:03:22 来源:

做过网络爬虫的人,可能对于ip代理非常的熟悉了,因为爬虫是需要大量的代理ip的。如果不通过换ip软件来进行ip切换,如此庞大的数据抓取工作是很难有序开展。

如何有效控制爬虫速度?

可是爬虫用代理IP之后为什么还遇到问题?很多朋友在使用了优质稳定代理IP、控制了访问速度和次数、设置了UserAgent、Referer等一系列方式的情况下,发现爬虫工作还是会遇到各种不好的情况,导致爬虫工作总是不那么顺利的进行,无法高效的爬取大量数据,按时完成每天的工作任务,问题出在哪里呢,有什么好的解决办法呢?

爬虫有阻碍,可能是因为你的爬虫速度设置得不合理。

一般情况,可以对每个页面抓取之间的延迟设置为最大来控制频率,这样不会给服务器造成负担,也不会因访问频繁被封。但这种方法会导致抓取的速度较慢,如果有大量抓取任务,会严重影响效率。

有一种方法就是PID控制算法,不用通过计算的方法就可以控制爬虫的速度,简单说就是当爬虫速度过快的时候,就会增加延时的时间。当速度过慢的时候,也会自动减小延时的时间。

还有一种自然的解决方法就是等待时间动态变化,最小的时间间隔减去网页读取的时间,这样无论在网络流畅还是网络较差的时候,网页都是最小的时间间隔。但这种方法只适合单线程的爬虫小规模网站。

如果你爬虫速度设置得太快,那么目标网站的服务器压力会很大,这个时候,它对ip的限制就会更加的严格,所以这反而不利于我们完成数据爬取。


相关文章内容简介

1 如何有效控制爬虫速度?

  做过网络爬虫的人,可能对于ip代理非常的熟悉了,因为爬虫是需要大量的代理ip的。如果不通过换ip软件来进行ip切换,如此庞大的数据抓取工作是很难有序开展。  可是爬虫用代理IP之后为什么还遇到问题?很多朋友在使用了优质稳定代理IP、控制了访问速度和次数、设置了UserAgent、Referer等一系列方式的情况下,发现爬虫工作还是会遇到各种不好的情况... [阅读全文]

最新标签