抓取网站的请求/第二标准是什么?

时间:2010-05-29 22:24:43

标签: screen-scraping etiquette

这是我问题中最接近的问题,并没有真正得到很好的回答:

Web scraping etiquette

我正在寻找#1的答案:

你应该做多少请求/秒?

现在我从链接队列中拉出来。每个被抓取的网站都有自己的线程,在请求之间休眠1秒钟。我要求gzip压缩以节省带宽。

这有什么标准吗?当然,所有大型搜索引擎都有一些关于此的指导方针。

3 个答案:

答案 0 :(得分:6)

wikipedia article on web crawling有一些关于其他人正在做什么的信息:

  

Cho [22]使用10秒作为   访问间隔和WIRE   履带[28]使用15秒作为   默认。 MercatorWeb爬虫   遵循自适应礼貌政策:   如果花了t秒下载一个   来自给定服务器的文档   爬虫等待10秒钟   下载下一页。[29]莳萝   等。 [30]使用1秒。

我通常会尝试5秒钟,因为它看起来不那么可疑了。

答案 1 :(得分:3)

没有设定的标准,这取决于卷筒纸刮削的负载量。只要您没有明显影响其他用户的网站速度,它应该是一个可接受的抓取速度。

由于网站上的用户数量和负载不断波动,因此动态调整抓取速度是个不错的主意。

监控下载每个页面的延迟,如果延迟开始增加,则开始降低您的抓取速度。从本质上讲,网站的负载/延迟应该与您的抓取速度成反比。

答案 2 :(得分:1)

当我的客户/老板要求我做这样的事情时,我通常会在寻求公共网站之前寻找公共API。同时联系网站所有者或技术联系人并要求获得许可,将“停止和停止”信件保持在最低限度。