`
vie61vie
  • 浏览: 10482 次
社区版块
存档分类
最新评论

Heritrix源码分析(二) 配置文件order.xml介绍

 
阅读更多

Heritrix源码分析(二) 配置文件order.xml介绍
2010年10月13日
  本博客属原创文章,欢迎转载!转载请务必注明出处:http://guoyunsky.javaeye.com/blog/613412
  欢迎加入Heritrix群(QQ):10447185 
  order.xml是整个Heritrix的核心,里面的每个一个配置都关系到Heritrix的运行情况,没读源码之前我只能从有限的渠道去获知这些配置的运用.读完之后才知道Heritrix竟然有如此灵活的运用,如可以控制抓取速度,可以优化电脑性能,可以在某一次的抓取上继续抓取.当然整个order.xml里我也没有全部掌握,只知道大部分配置的作用,希望大家指点改正以及补充,谢谢!
    代表着该抓取JOB的元素,相当于Html的meta
   myheritrix  my heritrix  Admin      20090520051654 
  2. 跟抓取有关的所有参数,由于内容较多,并且Heritrix也已将他们分成不同模块,所以这里我也将他们拆分来说明.
   settings   logs checkpoints state  scratch  0  0  0  30  4096  65536  0                                       
  3.接下来拆分每个组件的配置文件一一进行说明,最后对Heritrix主要的配置也就是我们可以影响抓取的配置进行说明。
  3.1:抓取范围
   false  seeds.txt  true         ACCEPT    true    false true   20   3 1   2返回REJECT,如http://www.baidu.com/a/a/a/index.html ,其中/a出现三次,超过了2次,所以返回REJECT(拒绝)-->   20返回REJET,段表示http://www.baidu.com/a/b,其中a和b表示一个段 -->      
  3.2: HTTP协议
   Mozilla/5.0 (compatible; heritrix/1.14.3 +http://127.0.0.1) guoyunsky@hotmail.com 
  3.3:爬虫协议 
   classic  false       
  3.4:Frontier 调度器
   4.0等待的间隔时间,可以预防无节制的抓取一个网站.通常是用该值去乘以上一个url的抓取时间来表示为下一个url需要等待的时间 --> 20000等待时间,单位毫秒 --> 2000等待时间,单位毫秒--> 300 30 900 1 0 0 org.archive.crawler. frontier.HostnameQueueAssignmentPolicy如何去分配URI到各个队列,这个类是相同的host的url就属于同一个队列 -->  false false结果,并有可能去增加URI和调整setting,默认为false--> false true true 3000等待队列停用之前将被尝试 --> 100 -1 org.archive.crawler.frontier.Zer oCostAssignmentPolicy 300000 50等待.只有hold-queues为true才有效,默认为50 --> org.archive.crawler.u til.BdbUriUniqFilter false 
  3.5:URL规范化规则,主要用来规范化每个URL,用Heritrix默认的就好了,这里不做说明了,其实也是通过各种规则
  3.6:预先处理链组件:     true     false发送到在日志目录下的以本类命名的日志文件中。在heritrix.properties中设置好日志等级和日志格式,这个属性在重启后知获取一次. --> true false     true     86400 86400 false  
  3.7:获取组件:     true     false true sha1   true         1200 20000Socket在规定时间内(毫秒)没有反应,则将放弃连接或者读取。这里不一定是在抓取期间立即放弃,会尝试重新连接和重新读取直到这个设置的时间到了.设置为0则没这个限制,但这里不推荐,因为Socket会无限期处理 --> 0 0 false true   open     GB2312 true sha1 true发送'If-Modified-Since' header,如果上次的Last-Modified抓取历史消息在URI历史中有效--> true发送'If-Node-Match' header,如果上次的Etag抓取历史信息在URI历史中有效 --> true发送'Connection: close' header--> true发送'Referer' header,'Referer' header包含crawler来自哪里,在目前发现的URI页面里。'Referer'通常记录在远程服务器上,可以协助网站管理员去找出爬虫抓取了哪些特定的区域。 --> false发送'Range' header当文档尺寸最大下载字节数限制。要有礼貌的道HTTP服务器并且发送'Range' header,说明你只是对前n个字节感兴趣。如果文档尺寸最大下载字节数大于0,在'206 Partial Content'相应状态里发送'Range' header,这样比只是截断超出下载字节数要好,不过很少的情况下发送'Range',将会得到'416 Request Range Not Satisfiable'回应 --> socket),当没有指定时使用本地默认的地址 -->  
  3.8:抽取组件      true       true     true true true true true true  
  3.9:写组件    true     true      index.html  %2E  .    true  mirror  1023  255  false  true  LONG     
  3.10:请求链组件里面可以配置自己的调度器    true       true     false发送到 在日志目录下的以本类命名的日志文件中。在heritrix.properties中设置好日志等级和日志格式,这个属性在重启后知获取一次. --> true -1       true      
  3.11:统计跟踪链组件    20  
分享到:
评论

相关推荐

    heritrix-3.4.0-SNAPSHOT-src.zip

    Heritrix 是一个由 java 开发的、开源的网络爬虫,用户可以使用它来从网上抓取想要的资源。官网下载好像要翻墙,我下下来方便大家使用,这是3.4版本,配合heritrix-3.4.0-SNAPSHOT-dist.zip使用

    Heritrix1.14.3配置流程[参考].pdf

    - 复制`modules`、`profiles`、`selftest`三个目录及`heritrix.properties`、`jmxremote.password.template`、`heritrix.cacerts`、`jndi.properties`这四个文件至项目根目录。 - 将`arcMetaheaderBody.xsl`和`...

    Heritrix3.0教程 使用入门(三) 配置文件crawler-beans.cxml介绍.docx

    相较于Heritrix 1.x的`order.xml`,`crawler-beans.cxml` 采用了Spring框架进行管理,以bean的形式定义了各种组件,提高了配置的灵活性和可维护性。 1. **simpleOverrides**:这个bean用于设置基本的爬取任务信息,...

    heritrix-3.4.0-SNAPSHOT-dist.zip

    - `heritrix-3.4.0-SNAPSHOT`目录:这是Heritrix的主目录,包含了所有运行所需的基本文件,如jar包、配置文件、文档等。 - `bin`子目录:存放启动和停止Heritrix的脚本,通常在Unix/Linux环境下使用`start.sh`和`...

    heritrix正确完整的配置heritrix正确完整的配置

    2. **配置文件结构**: Heritrix的配置基于XML文件,主要包含`job.xml`(作业配置)、`engine.xml`(引擎配置)和各种模块的配置文件。理解这些文件的结构和作用是配置Heritrix的基础。 3. **作业配置** (`job.xml`)...

    heritrix源码

    这个“Heritrix源码”压缩包可能包含了Heritrix项目的完整源代码,以及相关的学习资料,对于深入理解Heritrix的工作原理、定制爬虫功能以及进行二次开发非常有帮助。以下将详细介绍Heritrix的关键知识点。 1. **...

    Heritrix源码分析

    20. `org.archive.crawler.settings`:管理配置文件`order.xml`,这是Heritrix的配置中心,定义了爬虫的行为和策略。 通过对这些包的分析,我们可以看到Heritrix是一个高度模块化和可定制的爬虫。每个组件都有明确...

    [开发自己的搜索引擎:Lucene.Heritrix(第2版)].邱哲.扫描版.pdf

    [开发自己的搜索引擎:Lucene.Heritrix(第2版)].邱哲.扫描版.pdf

    Lucene2.0+Heritrix搜索引擎(完整光盘).part2.rar

    去下载这个吧。(完整版的) http://d.download.csdn.net/down/1756566/caizhongda Lucene2.0+Heritrix搜索引擎(完整光盘).part2.rar

    heritrix3.2源码

    在下载的压缩包中,`爬虫heritrix.doc` 可能是关于Heritrix 3.2 的使用指南或文档,包含了详细的配置说明、操作教程和常见问题解答。阅读这份文档可以帮助我们更好地理解和使用Heritrix。 `heritrix-3.2.0-SNAPSHOT...

    heritrix

    此外,`conf`目录下的`heritrix.properties`文件是Heritrix的核心配置文件,包含了运行时的许多参数,如默认工具类、Web用户界面(WebUI)的启动参数和日志格式等。 首次运行Heritrix时,需要在`heritrix....

    Lucene+Heritrix开发自己的搜索引擎3.rar

    在"testDWR"这个文件中,可能包含了演示如何将Heritrix与Lucene集成的代码示例或配置文件。DWR(Direct Web Remoting)是一个JavaScript库,它允许在客户端和服务器之间进行异步通信,可能在这里用于交互式展示搜索...

    heritrix3.2.0源文件

    2. **配置文件**:如`crawldirs/config/heritrix.xml`,定义了爬虫的基本配置和工作流。 3. **处理器类**:实现特定爬取任务的Java类,如`org.archive.modules.fetcher.FetchHttp`负责HTTP请求。 4. **模块和依赖**...

    基于heritrix的web信息抽取本科论文.doc

    Heritrix的设计理念是提供一个灵活、可扩展的框架,允许开发者根据需要定制和配置爬虫的行为,以适应不同的信息抽取任务。Heritrix支持HTTP、HTTPS等多种协议,可以处理JavaScript、CSS、图片等多种类型的Web内容,...

    Heritrix1.14.4(含源码包)

    3. **配置文件**:Heritrix的配置文件是XML格式的,用于定义爬虫的行为,如爬取深度、并发度、重试策略、排除规则等。你需要根据实际需求修改这些配置来定制爬虫行为。 4. **源码编译与运行**:下载Heritrix 1.14.4...

    heritrix-1.14.4.zip 和 heritrix-1.14.4-src.zip

    例如,`default.cxml`是Heritrix的主要配置文件,包含了整个爬取流程的配置。 在进行二次开发时,开发者需要注意遵循Heritrix的编程规范和设计模式,确保新添加的模块与现有架构兼容。同时,理解并尊重网站的版权和...

    基于heritrix的web信息抽取学位论文.doc

    Heritrix提供了高度可配置的爬行策略,能够按照预定义的规则抓取Web内容。 【信息抽取】信息抽取是从非结构化的Web文档中提取结构化数据的过程。它涉及到识别和提取特定的实体,如人名、日期、地点等,并将这些实体...

Global site tag (gtag.js) - Google Analytics