Heritrix1.14源码分析(14)各种问题总结

开博客以及建立Heritrix 群有一段时间了(这里谢谢大家的关注),这篇博客将整理这段时间所遇到的问题.同时由于自己从今年5月份开始就不怎么接触Heritrix,很多东西开始遗忘(不过里面思想没忘),同时目前的工作也没有必要接触Heritrix,所以不可能向之前写博客那样从源码的角度去考虑了.这...

2012-11-25 20:19:58

阅读数:505

评论数:1

Heritrix1.14源码分析(13) 如何让Heritrix不间断的抓取

近段时间在搞定Lucene的一些问题,所以Heritrix源码分析暂时告一段落。今天下午在群里有同学提到了Heritrix异常终止的问题以及让Heritrix不停的抓取(就是抓完一遍后载入种子继续抓取,目前他是写个定时器,定时检查Heritrix是否停止,如果停止了则重新初始化Heritrix,让...

2012-11-25 20:19:26

阅读数:667

评论数:0

Heritrix1.14源码分析(12) Heritrix的控制中心(大脑)CrawlController

CrawlController的确是Heritrix的大脑,在Heritrix中拥有无上的权利!可以控制Heritrix的启动、暂停、停止,也定时进行数据统计、数据汇报和文件管理。同时CrawlController也基本上贯穿整个Heritrix代码,和CrawlURI一样。同时CrawlCont...

2012-11-25 20:18:51

阅读数:625

评论数:0

Heritrix1.14源码分析(11) Heritrix中的URL--CandidateURI和CrawlURI以及如何增加自己的属性

Url是爬虫的核心,因为爬虫就是依赖URL一层一层的抓取下去,最后完成整个抓取。Heritrix中的URL比较特殊,有以下继承关系(由于不对继承关系作介绍,所以这里就不画图了):           1)org.archive.crawler.datamodel.CrawlURI——>...

2012-11-25 20:17:02

阅读数:540

评论数:0

Heritrix1.14源码分析(10) Heritrix中的Http Status Code(Http状态码)

以前在做Web开发的时候就接触过一些HttpStatus Code,比如404,500.后来接触Heritrix之后才知道HttpStatus Code竟然有如此之多。不一样的HttpStatus Code就代表不一样的Http状态,简单的如成功、失败、重定向等。Heritrix自己也根据自己的需...

2012-11-25 20:15:59

阅读数:618

评论数:0

Heritrix1.14源码分析(9) Heritrix的二次抓取以及如何让Heritrix抓取你不想抓取的URL

前面说过Heritrix可以在某个抓取基础上(这里假设为A)继续抓取,因为Heritrix对每一个URL都会有相应的日志处理,同时还有checkpoint(备份中心)。所以只要通过A上的日志就可以完全按照该基础A继续抓取,不会重复抓取任何A抓过的任何东西,也会继续抓取A没有抓过的URL。做到这个有...

2012-11-25 20:15:14

阅读数:584

评论数:0

Heritrix1.14源码分析(8) Heritrix8个处理器(Processor)介绍

Heritrix采用多线程去抓取数据,每次运行基本都要经过以下8个处理器处理(种子URL、先决条件URL除外),如此形成一整个流程。下面就大概介绍下每个处理器的作用以及大概处理的步骤。以后分析源码的时候再细节分析......         8个处理器都继承org.archive.crawl...

2012-11-25 20:14:19

阅读数:452

评论数:0

Heritrix1.14源码分析(7) Heritrix的文件结构分析

每通过Heritrix运行一次抓取后,发现在该Job目录下就会有很多文件。这里说明下每个文件的作用,同时更主要介绍它的日志文件,因为我们可以通过日志文件发现Heritrix的抓取情况。首先贴个图:         以上就是Heritrix完成的文件结构,现在一一说明   ...

2012-11-25 20:13:29

阅读数:479

评论数:0

Heritrix1.14源码分析(6) Heritrix总体介绍

网上关于Heritrix的基本介绍有很多,这里就不再重复。我这里主要介绍下它的优缺点。然后我会介绍它的运作流程以及我会从流程中各个点结合源码来分别介绍....       Heritrix整体让人感觉有些复杂和繁琐,一个爬虫写成这样也真是成仙了。接触Heritrix有1年半了,大概花了2个月...

2012-11-25 20:12:19

阅读数:536

评论数:0

Heritrix1.14源码分析(5) 如何让Heritrix在Ecplise等IDE下编程启动

在Heritrix注释里说Heritrix有三种启动方式,但我感觉只有两种:一种是通过tomcat或者JBOSS或者Jetty等Web容器,还有一种自然就是不通过Web直接编程运行。由于第二种方式更适合调试、研究代码,所以这里就介绍下它的编程启动方式吧....这里贴上示例代码以及注释:   ...

2012-11-25 20:11:42

阅读数:1050

评论数:0

Heritrix1.14源码分析(4)各个类说明

Heritrix的类的确很繁琐,往往继承了一层又一层,最多的继承好像有7层。下面就一个包一个包的说明每个类的作用,由于里面Heritrix组件分明,很多组件没用到的同时该组件的类我也没怎么接触,所以这里会忽略一部分,如果有知道的请补充,谢谢!如果对包还有不熟悉的,可以查看我前面的文章,这里也给出链...

2012-11-25 20:11:00

阅读数:806

评论数:0

Heritrix1.14源码分析(3) 修改配置文件order.xml加快你的抓取速度

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

2012-11-25 20:09:32

阅读数:594

评论数:0

Heritrix1.14源码分析(2) 配置文件order.xml介绍

order.xml是整个Heritrix的核心,里面的每个一个配置都关系到Heritrix的运行情况,没读源码之前我只能从有限的渠道去获知这些配置的运用.读完之后才知道Heritrix竟然有如此灵活的运用,如可以控制抓取速度,可以优化电脑性能,可以在某一次的抓取上继续抓取.当然整个order.xm...

2012-11-25 20:08:48

阅读数:735

评论数:0

Heritrix1.14源码分析(1) 包介绍

之前说过要分享下我的爬虫经验,但一直找不到突破口,现在才感觉写点东西真的很难,所以大家真的要感谢那些无私的前辈们,在网上留下的一篇篇可以指点迷津的文章。  想了很久,还是先从Heritrix的包开始说起,然后再说类,最后讲下如何加工Heritrix,也就是将其打造成自己想要的爬虫,这里补充下,我...

2012-11-25 20:07:37

阅读数:607

评论数:0

在Eclipse中搭建Heritrix 3.1

网上已经有几篇Heritrix 1.14版本的Eclipse搭建的文章,说的比较详细。本人下载了Heritrix 3.1,该版本相对Heritrix 1.14版本变化已经较大,在研究Heritrix零星的几个文档以后终于把环境搭建成功了,并把过程记录下来,希望对大家有所帮助。       Her...

2012-11-25 17:00:48

阅读数:1166

评论数:2

Heritrix3.0 载入种子的四种方式

Heritrix3.0新特性一大亮点就是,相比以前版本载入种子更灵活(甚至你可以动态载入种子),同时可以载入N个种子.以前版本载入种子是全部加载到内存 ,而一旦种子过多,那容易导致内存溢出.而新版本会分批次写入硬盘(通过调度器写入).所以避免了这个问题.下面就说一下Heritrix3.0 载入...

2012-11-25 16:24:17

阅读数:669

评论数:0

Heritrix3.0 配置文件crawler-beans.cxml介绍

可以说crawler-beans.cxml可以主导整个Heritrix的抓取.不同于Heritrix1.x版本的order.xml 是,crawler-beans.cxml采用Spring来管理.里面的配置都是一个个bean.所以无论从配置上,耦合上,动态控制 上,Heritrix3.0都改进不少...

2012-11-25 16:15:33

阅读数:684

评论数:0

Heritrix3.0 CrawlJob控制台界面

我觉得Heritrix很直观的一点就是有控制台,但以前我忽略了这个功能,直接代码启动Heritrix,然后放在Tomcat里.后期才慢慢发现一个UI界面的价值.可以很方便的获知抓取情况,甚至完全在千里之外控制它的抓取.其实慢慢的发现很多开源框架都会有一个UI界面.我觉得这也是大势所趋.但在界面上H...

2012-11-25 16:11:39

阅读数:582

评论数:0

Heritrix3.0 的安装,使用

1、下载heritrix3.0或heritrix3.1,解压。运行cmd,进入到bin目录下(如笔者的目录: cd D:\heritrix-3.1.0\bin)。运行命令: heritrix -a admin:admin ,这里冒号前面admin是用户名,后面是密码,这样将会在另一个新建的窗口...

2012-11-25 15:59:51

阅读数:1107

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭