admin管理员组

文章数量:1530842

2024年3月12日发(作者:)

开源搜索引擎的比较

1. Nutch

简介:

Nutch是一个用java实现的基于Lucene的开源搜索引擎框架,主要包括爬虫和查询两

部分组成。Nutch所使用的数据文件主要有以下三种:1)是webDb,保存网页链接结构

信息,只在爬虫工作中使用。2)是segment,存储网页内容及其索引,以产生的时间来

命名。segment文件内容包括CrawlDatum、Content、ParseData、ParseText四个部分,

其中CrawlDatum保存抓取的基本信息,content保存html脚本,ParseData和ParseText

这两个部分是对原内容的解析结果。3)是index,即索引文件,它把各个segment的信息

进行了整合。爬虫的搜索策略是采用广度优先方式抓取网页,且只获取并保存可索引的内

容。

Nutch0.7需要java1.4以上的版本,nutch1.0需要java1.6。

特点:

1、 遵循,当爬虫访问一个站点时,会首先检查该站点根目录下是否

存在,如果存在,搜索机器人就会按照该文件中的内容来确定访问 的范围;如

果该文件不存在,所有的搜索蜘蛛将能够访问网站上所有没有被口令保护的页面。

2、采用基于Hadoop的分布式处理模型,支持分布式的实现。

3、Nutch可以修剪内容,或者对内容格式进行转换。

4、 Nutch使用插件机制,可以很好的被用户定制和集成。

5、 Nutch采用了多线程技术。

6、 将爬取和建索引整合在了一起,爬取内容的存储方式是其自己定义的segment,

不便于对爬取的内容进行再次处理,需要进行一定的修改。

7、 因为加入了对页面分析,建索引等功能其效率与heritrix相比要相对较低。

2. Heritrix

简介:

Heritrix是一个用Java实现的基于整个web的可扩展的开源爬虫框架。Heritrix主要由

三大部件:范围部件,边界部件,处理器链组成。范围部件主要按照规则决定将哪个URI

入队;边界部件跟踪哪个预定的URI将被收集,和已经被收集的URI,选择下一个 URI,剔

除已经处理过的URI;处理器链包含若干处理器获取URI,分析结果,将它们传回给边界部

件。采用广度优先算法进行爬取。

heritrix用来获取完整的、精确的、站点内容的深度复制。包括获取图像以及其他非文

本内容。抓取并存储相关的内容。对内容来者不拒,不对页面进行内容上的修改。重新爬

行对相同的URL不针对先前的进行替换。

特点:

本文标签: 内容进行爬虫部件