开源爬虫的比较

开源爬虫的比较

ID:34280920

大小:58.10 KB

页数:7页

时间:2019-03-04

开源爬虫的比较_第1页
开源爬虫的比较_第2页
开源爬虫的比较_第3页
开源爬虫的比较_第4页
开源爬虫的比较_第5页
资源描述:

《开源爬虫的比较》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、开源爬虫Labin,Nutch,Neritrix介绍和对比26从网上找了一些开源spider的相关资料,整理在下面:Larbin开发语言:C++http://larbin.sourceforge.net/index-eng.htmllarbin是个基于C++的web爬虫工具,拥有易于操作的界面,不过只能跑在LINUX下,在一台普通PC下larbin每天可以爬5百万个页面(当然啦,需要拥有良好的网络)简介Larbin是一种开源的网络爬虫/网络蜘蛛,由法国的年轻人SébastienAilleret独立开发。larb

2、in目的是能够跟踪页面的url进行扩展的抓取,最后为搜索引擎提供广泛的数据来源。Larbin只是一个爬虫,也就是说larbin只抓取网页,至于如何parse的事情则由用户自己完成。另外,如何存储到数据库以及建立索引的事情larbin也不提供。Latbin最初的设计也是依据设计简单但是高度可配置性的原则,因此我们可以看到,一个简单的larbin的爬虫可以每天获取500万的网页,非常高效。     功能     1.larbin获取单个、确定网站的所有联结,甚至可以镜像一个网站。     2.larbin建立url

3、列表群,例如针对所有的网页进行urlretrive后,进行xml的联结的获取。或者是mp3。     3.larbin定制后可以作为搜索引擎的信息的来源(例如可以将抓取下来的网页每2000一组存放在一系列的目录结构里面)。问题Labin的主要问题是,:仅提供保存网页保存功能,没有进行进一步的网页解析;不支持分布式系统;功能相对简单,提供的配置项也不够多;不支持网页自动重访,更新功能;从2003年底以后,Labin已经放弃更新,目前处于荒芜长草的状态Nutch开发语言:Javahttp://lucene.apac

4、he.org/nutch/ 简介:Apache的子项目之一,属于Lucene项目下的子项目。Nutch是一个基于Lucene,类似Google的完整网络搜索引擎解决方案,基于Hadoop的分布式处理模型保证了系统的性能,类似Eclipse的插件机制保证了系统的可客户化,而且很容易集成到自己的应用之中。 总体上Nutch可以分为2个部分:抓取部分和搜索部分。抓取程序抓取页面并把抓取回来的数据做成反向索引,搜索程序则对反向索引搜索回答用户的请求。抓取程序和搜索程序的接口是索引,两者都使用索引中的字段。抓取程序和搜索

5、程序可以分别位于不同的机器上。下面详细介绍一下抓取部分。抓取部分: 抓取程序是被Nutch的抓取工具驱动的。这是一组工具,用来建立和维护几个不同的数据结构:webdatabase,asetofsegments,andtheindex。下面逐个解释这三个不同的数据结构:   1、Thewebdatabase,或者WebDB。这是一个特殊存储数据结构,用来映像被抓取网站数据的结构和属性的集合。WebDB用来存储从抓取开始(包括重新抓取)的所有网站结构数据和属性。WebDB只是被抓取程序使用,搜索程序并不使用它。We

6、bDB存储2种实体:页面和链接。页面表示网络上的一个网页,这个网页的Url作为标示被索引,同时建立一个对网页内容的MD5哈希签名。跟网页相关的其它内容也被存储,包括:页面中的链接数量(外链接),页面抓取信息(在页面被重复抓取的情况下),还有表示页面级别的分数score。链接表示从一个网页的链接到其它网页的链接。因此WebDB可以说是一个网络图,节点是页面,链接是边。   2、Segment。这是网页的集合,并且它被索引。Segment的Fetchlist是抓取程序使用的url列表,它是从WebDB中生成的。Fe

7、tcher的输出数据是从fetchlist中抓取的网页。Fetcher的输出数据先被反向索引,然后索引后的结果被存储在segment中。Segment的生命周期是有限制的,当下一轮抓取开始后它就没有用了。默认的重新抓取间隔是30天。因此删除超过这个时间期限的segment是可以的。而且也可以节省不少磁盘空间。Segment的命名是日期加时间,因此很直观的可以看出他们的存活周期。   3、Theindex。索引库是反向索引所有系统中被抓取的页面,它并不直接从页面反向索引产生,而是合并很多小的segment的索引产

8、生的。Nutch使用Lucene来建立索引,因此所有Lucene相关的工具API都用来建立索引库。需要说明的是Lucene的segment的概念和Nutch的segment概念是完全不同的,不要混淆。简单来说Lucene的segment是Lucene索引库的一部分,而Nutch的Segment是WebDB中被抓取和索引的一部分。抓取过程详解:     抓取是一个循环的过程:抓取工具从W

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。