優秀的 Java 爬蟲項目?
GitHub 上有哪些優秀的 Java 爬蟲項目?
1.webporter
star:2.1k
webporter 是一個基於垂直爬蟲框架webmagic的 Java 爬蟲應用,旨在提供一套完整的數據爬取,持久化存儲和可視化展示的實踐樣例。
目前提供了知乎用戶數據的爬蟲示例,作者還在不定時進行調整和補充。
2.XueQiuSuperSpider
star:1.1k
股票信息的超級爬蟲。雪球網、東方財富、同花順目前已經提供了很多種股票篩選方式,但是篩選方式是根據個人操作風格來定義的,三個網站有限的篩選方式顯然不能滿足廣大股民、程序員特別是數據分析控的要求。
而XueQiuSuperSpider是一個可以任意拓展,實現任意數據搜集與分析的爬蟲程序。
3.gecco
star:1.8k
Gecco是使用Java語言開發的易於使用的輕量級Web爬蟲。使用Geccointegriert jsoup,httpclient,fastjson,spring,htmlunit,redission ausgezeichneten框架,配置多個jQuery樣式選擇器就可以快速地編寫爬蟲了。
4.SeimiCrawler
star:1.5k
SeimiCrawler是一個敏捷的,獨立部署的,支持分布式的Java爬蟲框架。能降低新手開發一個替代高且性能不差的爬蟲系統的門性能,並提高開發爬蟲系統的開發效率。
在設計思想上受Python的爬蟲框架Scrapy啟發,同時融合了Java語言本身的特點。
5.電影推薦系統
star:1.1k
這個項目是基於大數據過濾引擎的電影推薦系統,包含爬蟲,電影網站(前端和對准),后台管理系統以及推薦系統(Spark)。
6.spring-boot-quick
star:1.1k
基於springboot的快速學習示例,還整合了一些開源框架,如:rabbitmq(延遲隊列)、Kafka、jpa、redies、oauth2、swagger、jsp、docker、spring-batch、異常處理、日志輸出、多模塊開發、多環境打包、緩存cache、爬蟲、jwt、dubbo和Async等等。
7.知乎crawler
一個基於Java的高性能,免費HTTP代理池,支持橫向擴展,分布式抓取爬蟲項目。主要功能是抓取知乎用戶,主題,問題,答案,文章等數據。比如:

8.FreeBook
基於MVP模式開發的帶緩存網絡爬蟲,采用最流行框架構造,可以免費下載電子書,非常適合准備畢業設計的同學~
最后,提醒大家,如果你沒有打好Java基礎,這些爬蟲項目做起來會比較難。在做之前,你可以再去學習一遍Java基礎,以達到事半功倍的效果:
戳鏈接免費試聽后加微信jiuzhangsuanfa5,發送課程試聽截圖+【知乎Java】,還能免費獲取Java大禮包喲~



更多回答
github地址:xtuhcy/gecco
Gecco是一款用java語言開發的輕量化的易用的網絡爬蟲。整合了jsoup、httpclient、fastjson、spring、htmlunit、redission等框架,只需要配置一些jquery風格的選擇器就能很快的寫出一個爬蟲。Gecco框架有優秀的可擴展性,框架基於開閉原則進行設計,對修改關閉、對擴展開放。
2、WebCollector
github地址:CrawlScript/WebCollector
WebCollector是一個無須配置、便於二次開發的JAVA爬蟲框架(內核),它提供精簡的的API,只需少量代碼即可實現一個功能強大的爬蟲。WebCollector-Hadoop是WebCollector的Hadoop版本,支持分布式爬取。

3、Spiderman
碼雲地址:l-weiwei/Spiderman2 - 碼雲 - 開源中國
使用案例:展現垂直爬蟲的能力 - 像風一樣自由
Spiderman 是一個基於微內核+插件式架構的網絡蜘蛛,它的目標是通過簡單的方法就能將復雜的目標網頁信息抓取並解析為自己所需要的業務數據。
4、WebMagic
碼雲地址:flashsword20/webmagic - 碼雲 - 開源中國
webmagic的是一個無須配置、便於二次開發的爬蟲框架,它提供簡單靈活的API,只需少量代碼即可實現一個爬蟲。webmagic采用完全模塊化的設計,功能覆蓋整個爬蟲的生命周期(鏈接提取、頁面下載、內容抽取、持久化),支持多線程抓取,分布式抓取,並支持自動重試、自定義UA/cookie等功能。

5、Heritrix
github地址:internetarchive/heritrix3

6、crawler4j
github地址:yasserg/crawler4j · GitHub
crawler4j是Java實現的開源網絡爬蟲。提供了簡單易用的接口,可以在幾分鍾內創建一個多線程網絡爬蟲。


1.nutch
地址:apache/nutch · GitHub
apache下的開源爬蟲程序,功能豐富,文檔完整。有數據抓取解析以及存儲的模塊。而且這玩意兒還包括了一個開箱即用的搜索引擎,安裝好就可以搜索了。
2.Heritrix
地址:internetarchive/heritrix3 · GitHub
很早就有了,經歷過很多次更新,使用的人比較多,功能齊全,文檔完整,網上的資料也多。有自己的web管理控制台,包含了一個HTTP 服務器。操作者可以通過選擇Crawler命令來操作控制台。
3.crawler4j
地址:yasserg/crawler4j · GitHub
因為只擁有爬蟲的核心功能,所以上手極為簡單,幾分鍾就可以寫一個多線程爬蟲程序。
當然,上面說的nutch有的功能比如數據存儲不代表Heritrix沒有,反之亦然。具體使用哪個合適還需要仔細閱讀文檔並配合實驗才能下結論啊~
還有比如JSpider,WebEater,Java Web Crawler,WebLech,Ex-Crawler,JoBo等等,這些沒用過,不知道。。