本文列舉了一些較為常用的JAVA開源爬蟲框架:
1.Apache Nutch
- 官方網站:http://nutch.apache.org/
- 是否支持分布式:是
- 可擴展性:中。Apache Nutch並不是一個可擴展性很強的爬蟲,它是一個專門為搜索引擎定制的網絡爬蟲,雖然Apache Nutch具有一套強大的插件機制,但通過定制插件並不能修改爬蟲的遍歷算法、去重算法和爬取流程。
- 適用性:Apache Nutch是為搜索引擎定制的爬蟲,具有一套適合搜索引擎的URL維護機制(包括URL去重、網頁更新等),但這套機制並不適合目前大多數的精抽取業務(即結構化數據采集)。
- 上手難易度:難。需要使用者熟悉網絡爬蟲原理、hadoop開發基礎及linux shell,且需要熟悉Apache Ant
- 技術討論群:12077868
2.WebCollector
- 官方網站:https://github.com/CrawlScript/WebCollector
- 是否支持分布式:該框架同時包含了單機版和分布式版兩個版本
- 可擴展性:強
- 適用性:WebCollector適用於精抽取業務。
- 上手難易度:簡單
- 技術討論群:250108697 345054141
3.WebMagic
- 官方網站:http://git.oschina.net/flashsword20/webmagic
- 是否支持分布式:否
- 可擴展性:強
- 適用性:WebMagic適用於精抽取業務。
- 上手難易度:簡單。
- 技術討論群:373225642
4.Crawler4j
- 官方網站:https://github.com/yasserg/crawler4j
- 是否支持分布式:否
- 可擴展性:低。Crawler4j實際上是一個單機版的垂直爬蟲,其遍歷算法是一種類似泛爬的算法,雖然可以添加一些限制,但仍不能滿足目前大部分的精抽取業務。另外,Crawler4j並沒有提供定制http請求的接口,因此Crawler4j並不適用於需要定制http請求的爬取業務(例如模擬登陸、多代理切換)。
- 上手難易度:簡單
本文由網絡爬蟲與數據挖掘提供,轉載請注明出處。
Z-Blog:http://www.361wx.com