流行的开源爬虫库及软件选择

《海量数据处理》课程作业,搜寻“不同标准的”“最好用”的开源爬虫库及软件。取之于CSDN,用之于CSDN。

定义“最好用”

站在一个外行人的角度,考虑到这些开源软件能够公开地被大家获取,那么经过足够长的时间之后,最受欢迎,或者说流行程度最高的往往是“最好用的”,至少是比较好用的。因此首先将流行度作为搜索的要素。

搜索过程及结果

  • 在谷歌检索"best open source web crawler"以及"top web crawler"
    比较各自前10条搜索结果,发现以下爬虫库或软件出现频率最高:
    • Scrapy (Python)
    • Nutch (Java)
    • Heritrix (Java)
    • Gecco (Java)
    • Pyspider (Python)
      ……
  • 在百度检索“开源 爬虫 site:csdn.net”和“开源 爬虫 site:zhihu.com”,可以看到与谷歌搜索相似的结果。因此暂将上述软件作为建议的结果。

分析

根据这篇文章的描述,选择“最好用”的开源爬虫软件时考虑的因素包括:

  • 伸缩性
    必须在大数据量下仍然表现良好
  • 健壮性
    必须足够稳定,不会因偶尔返回的异常而停止工作
  • 分布式适用
    字面意思
  • 可扩展性
    即使有了新的数据格式,或是新的协议,爬虫应该易于适应
  • 数据传输格式
    根据自己的需要来,尽可能选有多种输出的
  • 数据质量
    虽然最后要自己清洗,尽量选结果容易清洗的吧
  • 礼貌
    不得损害你要爬取的对象

根据以上结果重新定义“最好用”:在上述方面表现优秀并最贴合你需求的软件,可以称得上是“最好用”的。

你可能感兴趣的:(流行的开源爬虫库及软件选择)