Heritrix源码分析(三) 修改配置文件order.xml加快你的抓取速度(转)

本博客属原创文章,欢迎转载!转载请务必注明出处:http://guoyunsky.iteye.com/blog/629891

      本博客已迁移到本人独立博客: http://www.yun5u.com/

    欢迎加入Heritrix群(QQ):109148319,10447185 , Lucene/Solr群(QQ) :  118972724

Heritrix的order.xml分了很多组件,可以灵活的配置各个抓取参数。但很多人都关心如何使得抓取更快更久更多,这里首先从Heritrix自身着手吧,修改order.xml的一些参数其实也可以达到这一目的.

下面就列出各个参数、说明和理想值

序号 配置名 理想值 说明
1 <long name="max-bytes-download">0</long> 0 最大下载字节数,就是当Heritrix抓取了多少字节后停止抓取0表示为无限制
2 <long name="max-document-download">0</long> 0 最大下载文档数,就是当Heritrix抓取了多少URL则停止抓取,0表示没有限制
3  <long name="max-time-sec">0</long>  3  抓取一个网页的最大时间(秒),超过了该时间则不抓取,0表示没有这个限制
4  <integer name="max-toe-threads">3</integer>  50  抓取的线程数,表示有多少个线程去抓取,一般50足够了
5  <float name="delay-factor">4.0</float>  1.0  如果从某个队列抓取一个URL花费N秒,则下次从该队列获取URL去抓取则要延迟N*该值
6  <integer name="max-delay-ms">20000</integer>  2000  队列的最大延迟时间,单位为毫秒
7  <integer name="min-delay-ms">2000</integer>  0  队列的最小延迟时间,单位为毫秒
8  <integer name="max-retries">30</integer>  5  URL抓取失败可以重试的次数,重试次数越少越好
9  <integer name="total-bandwidth-usage-KB-sec">0</integer>  0  总的 抓取速度(KB/秒)限制,0表示没有限制
10   <integer name="max-per-host-bandwidth-usage-KB-sec">0</integer>  0

每个域名抓取速度(KB/S)限制,0表示没有限制

11 <integer name="target-ready-backlog">50</integer> 200 准备队列中待抓取的URL个数,这些URL无需经过队列等待可以立刻去抓取
12  <integer name="ip-validity-duration-seconds">21600</integer> 0 DNS有效时间(单位为秒),超过这个时间则要重新去获取DNS
13 <integer name="robot-validity-duration-seconds">86400</integer> 0 爬虫协议(robots.txt)有效时间,超过这个时间则要重新去读取robots.txt
上一篇:从Java继承类的重名static函数浅谈解析调用与分派


下一篇:【转】Mac OS X Terminal 101:终端使用初级教程