成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

2016年,我對爬蟲的總結

netmou / 3148人閱讀

摘要:都說年末了,該給自己寫寫總結了。我現(xiàn)在做一些簡單的爬蟲都會用它。并且對數(shù)據(jù)的實時性要求較高,或者爬數(shù)據(jù)的時候封的太厲害了。對于這一類的爬蟲。消息隊列用于分發(fā)消息給某個爬蟲節(jié)點。爬蟲節(jié)點完成具體的爬蟲,格式化爬蟲數(shù)據(jù)。最后,感謝我的,謝謝

都說年末了,該給自己寫寫總結了。今天我想談一談的是我在公司這一年多里的負責的部分工作---爬蟲。做了這么久的爬蟲,是該寫點什么,留下點什么。在我所負責的這一段時間了。我總結了一下大概有以下幾類爬蟲設計思想。

簡單服務器定時爬蟲

客戶端爬蟲

lua解析

javascript解析

服務器離線爬蟲

下面在來細聊以下。

服務器-定時簡單爬蟲

在最開始的時候,我們做的就是這個。這應該是最簡單的爬蟲了。搜索引擎搜出來的大概就是這一類了。

這一類的爬蟲特點是我只需要爬取一個網(wǎng)站的某一部分數(shù)據(jù),發(fā)起http請求做html解析,然后存數(shù)據(jù)庫,就完了。比如一些其他網(wǎng)站提供的一些公共數(shù)據(jù),或者不要求實時性的數(shù)據(jù)。如汽車之家的汽車數(shù)據(jù),如英雄聯(lián)盟的英雄數(shù)據(jù),如政府網(wǎng)站的某些展示數(shù)據(jù)。我用過scrapy來抓取dota2的一些數(shù)據(jù),后來發(fā)現(xiàn)scrapy不一定完全在自己掌控中,我自己寫了一個爬蟲框架,叫Tspider。我現(xiàn)在做一些簡單的爬蟲都會用它。基于php的協(xié)程與curl_multi_*函數(shù)集實現(xiàn)的。單進程可到2000有效處理/min。

這一類的爬蟲處理流程大概類似如下

網(wǎng)上宣傳的諸如《xxx抓取淘寶MM照片》、《我從知乎偷取了多少數(shù)據(jù)》等等爬蟲,大概如此?!?1天精通xx語言》的既視感。

這一類的爬蟲的優(yōu)點大概就是簡單吧。

客戶端解析(lua、javascript)

我們公司是做移動端產(chǎn)品的,假如你也恰好是有(android/ios)客戶端支持的。并且對數(shù)據(jù)的實時性要求較高,或者爬數(shù)據(jù)的時候ip封的太厲害了??梢栽囋囄蚁旅嬲f的方式。我給他取名叫客戶端解析。

在這一類爬蟲中,需要客戶端嵌入腳本執(zhí)行引擎。把http的請求與數(shù)據(jù)解析放到客戶端去執(zhí)行。最后把數(shù)據(jù)呈現(xiàn)出來或者上報給服務器。準確度、實時性較高。

腳本:腳本的作用不過是把對應網(wǎng)站的數(shù)據(jù)(json、jsonp,html等等)轉換為我們需要的數(shù)據(jù)(格式化數(shù)據(jù))。當對方做出改變,我們只需要改變腳本就行。

策略:策略的作用是告訴客戶端,你們需要某部分時候,去執(zhí)行腳本中的哪個方法? 是否需要緩沖?是否需要展示原始網(wǎng)站的內容?等等一些通過服務器控制客戶端行為的東西。

離線爬蟲:是否需要在服務器爬取,將請求丟給消息隊列,離線爬蟲系統(tǒng)自己一邊玩去。

這種方式至少有兩個優(yōu)點:ip離散,實時性較高。

服務器-離線爬蟲系統(tǒng)

對于絕大部分服務,數(shù)據(jù)的爬取需求,還是需要在服務器完成的。對于這一類的爬蟲。架構的設計,需要有很好的擴展性。

爬取請求從后臺控制、對外網(wǎng)關而來。

爬蟲觸發(fā)器,就是通過消息隊列告訴爬蟲節(jié)點啥時候爬,爬誰的數(shù)據(jù)。

后臺控制,可以控制支持哪些網(wǎng)站的數(shù)據(jù),告警,異常管理。

消息隊列用于分發(fā)消息給某個爬蟲節(jié)點。

爬蟲節(jié)點:完成具體的爬蟲,格式化爬蟲數(shù)據(jù)。支持某個網(wǎng)站的爬取,通常修改此次就行了,這里也需要做好統(tǒng)計,做好告警。

去重:去重可以試試布隆過濾器simhash指紋算法和海明距離比較

思想或叫準則吧

總結一下:

只關心對的,不關心錯的。錯誤的,你永遠也枚舉不完。

在分層結構中,應該是越往最內層,數(shù)據(jù)(請求)越小,有效數(shù)據(jù)(請求)占比越高。

備份思想很重要。如果一臺機器掛斷的概率是百分之一,兩臺機器同時掛掉的概率就是萬分之一。

沒有什么萬能鑰匙,具體問題,具體分析,具體解決。

沒有什么完美的解決方案,有些時候需要根據(jù)業(yè)務做一些取舍。

最后,感謝我的leader——corey,謝謝!

文章版權歸作者所有,未經(jīng)允許請勿轉載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉載請注明本文地址:http://systransis.cn/yun/38354.html

相關文章

  • 2017中國大學排名爬蟲代碼修改

    摘要:課程的第單元中嵩天老師給出的中國大學排名爬蟲優(yōu)化代碼如果把中的改為就會出錯,原因年各校排名數(shù)字的格式為而年各校排名數(shù)字的格式為,針對這個問題,我對嵩天老師的代碼做了一點修改,可能不是很漂亮,但是實現(xiàn)了功能我很開心。 本文是學習http://www.icourse163.org/lea... 課程的代碼實現(xiàn)和反思。 課程的第6單元中嵩天老師給出的中國大學排名爬蟲優(yōu)化代碼如果把url中的2...

    Cruise_Chan 評論0 收藏0
  • 2017中國大學排名爬蟲代碼修改

    摘要:課程的第單元中嵩天老師給出的中國大學排名爬蟲優(yōu)化代碼如果把中的改為就會出錯,原因年各校排名數(shù)字的格式為而年各校排名數(shù)字的格式為,針對這個問題,我對嵩天老師的代碼做了一點修改,可能不是很漂亮,但是實現(xiàn)了功能我很開心。 本文是學習http://www.icourse163.org/lea... 課程的代碼實現(xiàn)和反思。 課程的第6單元中嵩天老師給出的中國大學排名爬蟲優(yōu)化代碼如果把url中的2...

    figofuture 評論0 收藏0
  • 一個前端菜鳥成長記

    摘要:一個前端菜鳥的成長記現(xiàn)在才總結似乎有點晚,但聊勝于無,記錄一下我的,畢業(yè)的第一年,對于人生意義重大的一年。感謝勇哥新哥,給予我機會去做更多的嘗試。 一個前端菜鳥的成長記 現(xiàn)在才總結似乎有點晚,但聊勝于無,記錄一下我的2016,畢業(yè)的第一年,對于人生意義重大的一年。 我的求職之路 打從進入了大四之后,便深深的意識到了就業(yè)的壓力,并一直在做著邁向社會的準備。從2015年9月開始,便開始投簡...

    Forelax 評論0 收藏0
  • </2016><2017>

    摘要:不覺間,已悄然離去恍然后,正慢慢襲來。已完成一期內容,只包含買家點餐功能,二期準備做賣家及支付功能。經(jīng)過考慮和評估,我決定對這兩個選擇進行一個折中。項目部署,及代理轉發(fā)等配置。發(fā)現(xiàn)最近,已經(jīng)對非技術類書籍少了很多興趣。 不覺間,2016已悄然離去;恍然后,2017正慢慢襲來。 又到了總結過去,展望未來的時候了,那就先總結16年的收獲和經(jīng)驗教訓,再展望17年對自己及行業(yè)的一些期望吧。 1...

    wangshijun 評論0 收藏0
  • </2016><2017>

    摘要:不覺間,已悄然離去恍然后,正慢慢襲來。已完成一期內容,只包含買家點餐功能,二期準備做賣家及支付功能。經(jīng)過考慮和評估,我決定對這兩個選擇進行一個折中。項目部署,及代理轉發(fā)等配置。發(fā)現(xiàn)最近,已經(jīng)對非技術類書籍少了很多興趣。 不覺間,2016已悄然離去;恍然后,2017正慢慢襲來。 又到了總結過去,展望未來的時候了,那就先總結16年的收獲和經(jīng)驗教訓,再展望17年對自己及行業(yè)的一些期望吧。 1...

    fxp 評論0 收藏0

發(fā)表評論

0條評論

netmou

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<