帮助中心 > 新闻资讯 > 分布式爬虫为什么不建议用Nutch?
分布式爬虫为什么不建议用Nutch?
发布时间: 2021-06-24

网络爬虫可以分为分布式爬虫、JAVA爬虫以及费JAVA爬虫如scrapy。今天神龙HTTP给大家讲解较多人使用的分布式爬虫下面我们来看看这类爬虫有什么特点。

现在比较流行的分布式爬虫,是Apache的Nutch。但是对于大多数用户来说,Nutch是这几类爬虫里,最不好的选择,理由如下:

1、Nutch依赖hadoop运行,hadoop本身会消耗很多的时间。如果集群机器数量较少,爬取速度反而不如单机爬虫快。

2、Nutch是为搜索引擎设计的爬虫,大多数用户是需要一个做精准数据爬取(精抽取)的爬虫。Nutch运行的一套流程里,有三分之二是为了搜索引擎而设计的对精抽取没有太大的意义。也就是说,用Nutch做数据抽取,会浪费很多的时间在不必要的计算上。而且如果你试图通过对Nutch进行二次开发,来使得它适用于精抽取的业务,基本上就要破坏Nutch的框架,把Nutch改的面目全非,有修改Nutch的能力,真的不如自己重新写一个分布式爬虫框架了。

3、 Nutch虽然有一套插件机制,可以提供精抽取的功能。但是开发过Nutch插件的人都知道,Nutch的插件系统有多蹩脚。利用反射的机制来加载和调用插件,使得程序的编写和调试都变得异常困难,更别说在上面开发一套复杂的精抽取系统了。

4、用Nutch进行爬虫的二次开发,爬虫的编写和调试所需的时间,往往是单机爬虫所需的十倍时间不止。了解Nutch源码的学习成本很高,而且调试过程中会出现除程序本身之外的各种问题。

所以,如果你不是要做搜索引擎,尽量不要选择Nutch作为爬虫。爬虫需要使用代理IP,能够有效的防止IP被禁止访问的情况。推荐神龙HTTP代理给大家,独享IP池,适合各类爬虫项目。

客户经理

17368683470

微信二维码

定制IP

关注获取更多优惠

公众号

回到顶部