天天看點

衆推平台架構——分布式爬蟲分布式爬蟲架構分布式爬蟲架構1分布式爬蟲架構2分布式爬蟲架構3分布式爬蟲架構4有想參與的可以一起進來讨論

經過新一輪的投票,項目的範圍已經基本确定。

衆推平台架構——分布式爬蟲分布式爬蟲架構分布式爬蟲架構1分布式爬蟲架構2分布式爬蟲架構3分布式爬蟲架構4有想參與的可以一起進來讨論

大家決定 全力以付,集中攻克“分布式爬蟲”。

使用隊列,即生産者,消費都模式。

衆推平台架構——分布式爬蟲分布式爬蟲架構分布式爬蟲架構1分布式爬蟲架構2分布式爬蟲架構3分布式爬蟲架構4有想參與的可以一起進來讨論

由于生産者将規則生成到隊列,然後由爬蟲叢集(消費者)到隊列中取規則,然後按優先級等規則進行爬取。

類似于webmagic,webmagic的是一個無須配置、便于二次開發的爬蟲架構,它提供簡單靈活的api,隻需少量代碼即可實作一個爬蟲。webmagic采用完全子產品化的設計,功能覆寫整個爬蟲的生命周期(連結提取、頁面下載下傳、内容抽取、持久化),支援多線程抓取,分布式抓取,并支援自動重試、自定義ua/cookie等功能。

衆推平台架構——分布式爬蟲分布式爬蟲架構分布式爬蟲架構1分布式爬蟲架構2分布式爬蟲架構3分布式爬蟲架構4有想參與的可以一起進來讨論

分布式爬蟲架構3,參考的cola是一個分布式的爬蟲架構,使用者隻需編寫幾個特定的函數,而無需關注分布式運作的細節。任務會自動配置設定到多台機器上,整個過程對使用者是透明的。

基于cola實作的爬蟲位于contrib/目錄下。目前實作了四個爬蟲:

wiki:維基百科。

weibo:新浪微網誌爬蟲。從初始使用者出發,然後是其關注和粉絲,依次類推,抓取指定個數的新浪微網誌使用者的微網誌、個人資訊、關注和粉絲。其中,使用者微網誌隻擷取了内容、贊的個數、轉發和評論的個數等等,而沒有具體去擷取此微網誌被轉發和評論的内容。

generic(unstable):通用爬蟲,隻需配置,而無需修改代碼。目前cola實作了一個抽取器(cola/core /extractor),能夠從網頁正文中自動抽取主要内容,即去除類似邊欄和底腳等内容。但是,此抽取器目前準确度還不夠,效率也不夠高,是以需要謹慎 使用。

weibosearch(unstable):新浪微網誌搜尋的爬蟲。這個爬蟲使用 cola.core.opener.spynneropener,基于spynner實作了一個opener能夠執行javascript和ajax代 碼。目前這個爬蟲存在的問題是:新浪微網誌可能會将其識别成機器人,是以有可能會讓輸入驗證碼。

wiki和weibo之前有所提及。主要說明generic和weibosearch。

衆推平台架構——分布式爬蟲分布式爬蟲架構分布式爬蟲架構1分布式爬蟲架構2分布式爬蟲架構3分布式爬蟲架構4有想參與的可以一起進來讨論

設計方式參考hadoop等分布式運算架構。

衆推平台架構——分布式爬蟲分布式爬蟲架構分布式爬蟲架構1分布式爬蟲架構2分布式爬蟲架構3分布式爬蟲架構4有想參與的可以一起進來讨論

控制結點類似于hadoop的namenode,工作結點類似于datanode。存儲可以根據代理适配到db或者mongo叢集等。

群号 194338168 

想深度參與的加,不想參與的就别往裡進了,現在需要的主要是開發和文檔兩類人。群會定期往出清人! (項目會開源出來)

繼續閱讀