動態換ip軟體帶你看:爬蟲常見的抓取策略

太陽小諸葛發表於2019-01-09

  網路爬蟲的不一樣爬取策略,就是運用不一樣的方法來確認待爬取URL佇列中URL優先性序列的。

  網路爬蟲的爬取策略有很多種,但不論方法如何,其基本目標一致:優先性選取重要網頁進行爬取。

  寬度優先性遍歷策略(Breath First)

  “將新下載網頁包含的連結直接追加到待爬取URL佇列末尾”,這就是寬度優先性遍歷的思想。也就是說,這種方法並沒有明確提出和使用網頁重要性衡量標準,只是機械地將新下載的網頁抽取連結,並追加到待爬取URL佇列中,以此安排URL的下載序列。

  OCIP策略(Online Page Importance Computation,線上頁面重要性計算)

  可以將其看做是一種改進的PageRank演算法。在演算法開始之前,每個網際網路頁面都給予相同的“現金”(cash),每當下載了某個頁面P後,P將自己擁有的“現金”平均分配給頁面中包含的連結頁面,把自己的“現金”清空。而對於待爬取URL佇列中的網頁,則根據其手頭擁有的現金金額多少排序,優先性下載現金最充裕的網頁。OCIP從大的框架上與PageRank思路基本一致,區別在於:PageRank每次需要迭代計算,而OCIP策略不需要迭代過程,所以計算速度遠遠快於PageRank,適合實時計算使用。同時,PageRank在計算時,存在向無連結關係網頁的遠端跳轉過程,而OCIP沒有這一計算因子。實驗結果表明,OCIP是種較好的重要性衡量策略,效果略優於寬度優先性遍歷策略。

  大站優先性策略(Larger Sites First)

  大站優先性策略思路很直接:以網站為單位來衡量網頁重要性,對於待爬取URL佇列中的網頁,根據所屬網站歸類,如果哪個網站等待下載的頁面最多,則優先性下載這些連結。其本質思想傾向於優先性下載大型網站,因為大型網站往往包含更多的頁面。鑑於大型網站往往是著名企業的內容,其網頁質量一般較高,所以這個思路雖然簡單,但是有一定依據。實驗表明這個演算法效果也要略優於寬度優先性遍歷策略。

  暗網爬取(Deep Web Crawling)

  所謂暗網,是指目前搜尋引擎網路爬蟲按照常規方式很難爬取到的網際網路頁面。如前所述,搜尋引擎網路爬蟲依賴頁面中的連結關係發現新的頁面,但是很多網站的內容是以資料庫方式儲存的,典型的例子是一些垂直領域網站,比如攜程旅行網的機票資料,很難有顯式連結指向資料庫內的記錄,往往是服務網站提供組合查詢介面,只有使用者按照需求輸入查詢之後,才可能獲得相關資料。所以,常規的網路爬蟲無法索引這些資料內容,這是暗網的命名由來。

  為了能夠對暗網資料進行索引,需要研發與常規網路爬蟲機制不一樣的系統,這類網路爬蟲被稱做暗網網路爬蟲。暗網網路爬蟲的目的是將暗網資料從資料庫中挖掘出來,並將其加入搜尋引擎的索引,這樣使用者在搜尋時便可運用這些資料,增加資訊覆蓋程度。

  垂直網站提供的搜尋介面,往往需要人工選取或者填寫內容,比如機票搜尋需要選取出發地、到達地和日期,圖書搜尋需要指出書名或者作者。而暗網網路爬蟲為了能夠挖掘資料庫的記錄,必須模擬人的行為,填寫內容並提交表單。對於暗網網路爬蟲來說,其技術挑戰有兩點:一是查詢組合太多,如果一一組合遍歷,那麼會給被訪問網站造成太大壓力,所以如何精心組合查詢選項是個難點;第二點在於:有的查詢是文字框,比如圖書搜尋中需要輸入書名,網路爬蟲怎樣才能夠填入合適的內容?這個也頗具挑戰性。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31561288/viewspace-2375244/,如需轉載,請註明出處,否則將追究法律責任。

相關文章