WebCollector分佈式爬取

WebCollector-Hadoop是WebCollector的分佈式版本,目前爲beta版本

項目地址:WebCollector-Hadoop

WebCollector-Hadoop需要運行在Hadoop上,因此最好在Linux中運行。

用本地模式運行WebCollector-Hadoop並不需要配置hadoop環境,WebCollector-Hadoop項目是一個maven項目,本身包含了hadoop核心jar包,直接運行項目即可使用hadoop本地模式運行爬蟲。

如果希望將爬蟲發佈在集羣上,使用maven的assembly功能,將整個項目打包成一個完整的jar包,即用命令行進入項目的根目錄,執行:

mvn assembly:assembly

打包完畢後,可以在項目的target文件夾中找到一個形如xxxxx-with-dependencies.jar的jar包,用hadoop命令提交這個jar包即可:

hadoop -jar xxxxx.jar 主類

這樣就可以在集羣上運行WebCollector-Hadoop。

WebCollector-Hadoop的URL維護機制(任務生成、URL去重等)主要學習自Nutch。Nutch是一個爲搜索引擎定製的泛爬爬蟲,但WebCollector-Hadoop是一個既支持泛爬、又支持定向爬取和精抽取的爬蟲。Nutch的URL維護機制中有一套面向搜索引擎的更新、打分機制,WebCollector-Hadoop將這套機制替換爲一套適合精數據採集的機制。

這裏不得不說的一點是,小規模的集羣對爬蟲速度的提升並沒有太大的幫助,有時候反而慢於單機爬蟲(每個機器各開一個單機爬蟲)。對於一般的業務,建議還是將任務分離,在每臺機器上使用單機爬蟲採集比較好,分佈式爬蟲畢竟有自己的侷限性。

目前WebCollector-Hadoop處於beta版,仍在不斷改進中。

通過捐款支持WebCollector

維護WebCollector及教程需要花費較大的時間和精力,如果你喜歡WebCollector的話,歡迎通過捐款的方式,支持開發者的工作,非常感謝!

你可以使用支付寶錢包掃描下方的二維碼進行捐款, 或者通過向支付寶帳號 [email protected]轉帳進行捐款。

發佈了90 篇原創文章 · 獲贊 67 · 訪問量 52萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章