用搜尋引擎原理來解釋爬蟲(蜘蛛)是什麼

來源:互聯網
上載者:User

  很多人看來的爬蟲是神乎其神的,也造成一個最常見的“實踐後的經驗之談”——實踐證明百度爬蟲會秒收原創的內容!

  當然在任何一個略懂搜尋引擎原理的人眼中,這就是毫不靠譜的實踐。如果說實踐是驗證真理的方式的話,那前提要是有了比較完善的理論假設以後再去驗證的。而像爬蟲根本沒有分析內容的能力,怎可能判斷頁面內容是否原創以後再進行收錄呢?

  甚至有人認為爬蟲根本就不會去抓取採集的內容,這就更奇怪了,爬蟲不是Crowdsourced Security Testing,抓取之前怎麼會知道頁面是否是採集的呢?(這裡不考慮一個特殊情況,即搜尋引擎可能參考網站整體原創率來決定抓取優先順序的問題,但這個比較深了)

  搜尋引擎四個系統:下載、分析、索引、查詢,這四塊的工作基本獨立的,判斷採集與否的工作處於分析系統。而且估計是出於大規模頁面查重的效率考慮,重複頁面一般被索引以後隔比較長的時間才會被刪除。即,搜尋引擎收錄頁面與否,至少和這個頁面本身品質無關。

  現在已經說明了爬蟲無法判斷頁面品質,但其實嚴格意義上,爬蟲連提取連結的作用都沒有,它只是單單一個TCP/IP程式而已。但分析連結的事情總是要做的,不然爬蟲也沒法抓取新的頁面了。準確的講,分析連結是交由“調度員”來做的。爬蟲1抓取頁面,頁面交給調度員1分析,調度員1把所有發現的連結存到URL庫1,並把一部分調度員認為重要的連結返回爬蟲1,讓爬蟲1去抓取那些重要的頁面。同時,爬蟲1抓取過的頁面交給Page庫1,如果Page庫1裡面的頁面和URL庫1裡面重複的話,就不再重複抓取。

  大型商業搜尋引擎都是多爬蟲共同工作的,此時每個“調度員”還要和“總調度”交換資訊,從而分配各個爬蟲的具體工作。如果看到幾個爬蟲經常輪流的短時間內抓取一個頁面多次的話,往往就是調度工作沒做好。

  不過其實諸如“調度員”之類的,歸入爬蟲程式裡面也不能算錯。只是一個說法相對嚴謹、一個說法相對寬鬆而已。但無論如何的是,爬蟲只管下載,最多就配合調度員多幾個花樣來下載罷了。

  本文來自http://www.csdinuan.com,允許轉載,但請保留連結.



相關文章

E-Commerce Solutions

Leverage the same tools powering the Alibaba Ecosystem

Learn more >

Apsara Conference 2019

The Rise of Data Intelligence, September 25th - 27th, Hangzhou, China

Learn more >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。