您的位置:首页 > 新闻资讯 >文章内容
爬虫都要使用动态代理ip吗?Java分布式爬虫Nutch呢?
来源:互联网 作者:admin 时间:2019-04-08 17:12:27

  开始学爬虫之时,最先接触的是简单的爬虫,随着学习的深入,慢慢开始接触分布式爬虫。我们使用分布式爬虫主要是为了加大数据的爬取,也就是大批量URL管理。


  比如说我们常用的Scrapy,此外,还有没有其他的分布式爬虫呢?有的,比如Java中的Nutch。不过,对于大多数用户来说,Nutch是这几类网络爬虫里,最不好的选择,理由如下:


  很多人说Nutch2有gora,可以持久化数据到avro文件、hbase、mysql等。很多人其实理解错了,这里说的持久化数据,是指将URL信息(URL管理所需要的数据)存放到avro、hbase、mysql。并不是你要抽取的结构化数据。其实对大多数人来说,URL信息存在哪里无所谓。


爬虫都要使用动态代理ip吗?Java分布式爬虫Nutch呢?


  Nutch虽然有一套插件机制,而且作为亮点宣传。可以看到一些开源的Nutch插件,提供精抽取的功能。但是开发过Nutch插件的人都知道,Nutch的插件系统有多蹩脚。利用反射的机制来加载和调用插件,使得程序的编写和调试都变得异常困难,更别说在上面开发一套复杂的精抽取系统了。而且Nutch并没有为精抽取提供相应的插件挂载点。Nutch的插件有只有五六个挂载点,而这五六个挂载点都是为了SEO服务的,并没有为精抽取提供挂载点。大多数Nutch的精抽取插件,都是挂载在“页面解析”(parser)这个挂载点的,这个挂载点其实是为了解析链接(为后续爬取提供URL),以及为SEO提供一些易抽取的网页信息(网页的meta信息、text文本)。


  Nutch2的版本目前并不适合开发。官方现在稳定的Nutch版本是,但是这个版本绑定了。如果想用hbase配合nutch(大多数人用nutch2就是为了用hbase),只能使用版本左右的hbase,相应的就要将hadoop版本降到hadoop 0.2左右。而且nutch2的官方教程比较有误导作用,Nutch2的教程有两个,分别是和,这个官网上写的是可以支持到hbase 0.94。但是实际上,这个的意思是之前、之后的一个版本,这个版本在官方的SVN中不断更新。而且非常不稳定(一直在修改)。


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


  用Nutch进行网络爬虫的二次开发,网络爬虫的编写和调试所需的时间,往往是单机网络爬虫所需的十倍时间不止。了解Nutch源码的学习成本很高,何况是要让一个团队的人都读懂Nutch源码。调试过程中会出现除程序本身之外的各种难题(hadoop的难题、hbase的难题)。


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


  所以,如果你不是要做SEO,尽量不要选择Nutch作为网络爬虫。有些团队就喜欢跟风,非要选择Nutch来开发精抽取的网络爬虫,其实是冲着Nutch的名气,当然最后的结果往往是项目延期完成。


  如果你是要做SEO,是一个非常好的选择。和solr或者es配合,就可以构成一套非常强大的SEO了。如果非要用Nutch2的话,建议等到发布再看。目前的Nutch2是一个非常不稳定的版本。


  另外,分布式爬虫还需要使用动态IP的,否则效果没有那么好,速度也是提不起来的。


相关文章内容简介
推荐阅读
  • 18 2019-06
    用代理服务器上网的好处

    用代理服务器上网的好处,都有哪些呢?网络上的哪些平台都是要放在服务器中的,不然我们也访问不到,但是什么是代理服务器呢?为何有些人上网也需要代理服务器的?

  • 21 2019-05
    代理服务器不同类型用途不同

    代理服务器不同类型用途不同,其实代理其实分很多种,不同的代理,其作用或者是使用的场景可能是不一样的,不会混为一谈,那么这些代理都有什么不同呢?

  • 15 2019-06
    大家使用共享代理IP池的优缺点

    大家使用共享代理IP池的优缺点是怎样的?对于爬虫工作者来说,除了要解决令人头疼的反爬虫策略,还需要寻找高效稳定的代理IP。然而,国内固有的IP数量满足不了日益增长的IP需求,所以现

  • 18 2019-01
    采集数据怎么找个IP多的代理

    在这个大数据时代,大部分的企业都需要了解市场的情况,否则容易导致本身价格过高或者过低等等不好的情况出现,因此企业通过爬虫采集数据信息,对获取的数据进行分析,制定适合自己的

  • 24 2019-05
    透明代理无法隐藏IP地址

    透明代理无法隐藏IP地址,有时候大家使用代理,但是却被对方发现了,这是为什么呢?可能你使用的是透明代理,何为透明代理呢?

  • 13 2019-04
    内网获取公网IP难吗?设置机灵代理使用即可

    内网获取公网IP难吗?我们内网使用的都是动态的IP地址,而且也不能直接连接上网,还需要使用公网IP的,着公网IP怎么来的呢?找代理IP商可以更换公网IP吗?我们一起来了解下。

在线客服
大客户VIP渠道
点击这里给我发消息
讨论QQ群
HTTP代理IP爬虫
客服电话
13318873961