重慶分公司,新征程啟航
為企業提供網站建設、域名注冊、服務器等服務
為企業提供網站建設、域名注冊、服務器等服務
遍歷策略是爬蟲的核心問題,在爬蟲系統中,待抓取URL隊列是很重要的一部分。待抓取URL隊列中的URL以什么樣的順序排列也是一個很重要的問題,因為這涉及到先抓取那個頁面,后抓取哪個頁面而決定這些URL排列順序的方法,叫做抓取策略爬蟲策略主要有以下幾種:
創新互聯建站主營江漢網站建設的網絡公司,主營網站建設方案,手機APP定制開發,江漢h5微信小程序搭建,江漢網站營銷推廣歡迎江漢等地區企業咨詢
一,深度優先遍歷策略:
深度優先遍歷測試是指網絡爬蟲會從起始頁開始,一個鏈接一個鏈接跟蹤下去,處理完這條線路的鏈接之后,在再轉入下一個起始頁,繼續跟蹤鏈接,我們以下面的圖為例:
遍歷的路徑是:A-F-G E-H-I B C D
不過,我們在做爬蟲時,深度優先策略不一定能適用于所有情況,深度優先如果誤入無窮分枝(深度無限),則不可能找到目標節點。
二,廣度優先遍歷策略:
廣度優先策略是按照樹的層次進行搜索,如果此層沒有搜索完成,不會進入下一層搜索。即,首先完成一個層次的搜索,其次在進行下一層次,也稱之為分層處理。我們還以上面的圖為例:
遍歷的路徑是:第一層遍歷:A-B-C-D-E-F,第二層遍歷:G-H,第三層則遍歷:I
不過,廣度優先遍歷策略屬于盲目搜索,它并不考慮結果存在的可能位置,會徹底地搜索整張圖,因而效率較低,但是,如果你要盡可能的覆蓋較多的網頁,廣度優先搜索方法是較好的選擇。
三,部分的PageRank的策略:
PageRank算法的思想:對于已經下載的網頁,連同待抓取URL隊列的URL,形成網頁集合,計算每個頁面的PageRank值(PageRank算法參考:PageRank算法 - 從原理到實現),計算完之后,將待抓取隊列中的URL按照網頁級別的值的大小排列,并按照順序依次抓取網址頁面。
如果每次新抓取一個網頁,重新就計算的的的PageRank值,明顯效率太低。折中辦法是網頁攢夠?個計算一次。
下圖即為網頁級別的策略示意圖:
設定每下載3個網頁進行新的PageRank的計算,此時已經有{1,2,3} 3個網頁下載到本地。這三個網頁包含的鏈接指向{4,5,6},即待抓取URL隊列,如何決定下載順序?
將這6個網頁形成新的集合,對這個集合計算的的PageRank的的值,這樣4,5,6就獲得自己對應的網頁級別值,由大到小排序,即可得出下載順序假設順序為5,4,6,當下載55頁面后抽取出鏈接,指向頁面8,此時賦予8臨時的PageRank值,如果這個值大于4和6的PageRank的,則接下來優先下載頁面8,如此不斷循環,即形成了非完全的網頁級別的策略的計算思路。
四,OPIC策略策略(在線頁面重要性計算):
基本思路:在算法開始前,給所有頁面一個相同的初始現金(現金)當下載了某個頁面P之后,將P的現金分攤給所有從P中分析出的鏈接,并且將P的現金清空。對于待抓取URL隊列中的所有頁面按照現金數進行排序。
與PageRank的的的的區別在于:PageRank的的的每次需要迭代計算,而OPIC策略不需要迭代過程所以計算速度遠遠快與PageRank的的的,適合實時計算使用。
五,大站優先策略:
策略思路: 以網站為單位來選題網頁重要性,對于待爬取URL隊列中的網頁,根據所屬網站歸類,如果哪個網站等待下載的頁面最多,則優先下載這些鏈接,其本質思想傾向于優先下載大型網站。因為大型網站往往包含更多的頁面。鑒于大型網站往往是著名企業的內容,其網頁質量一般較高,所以這個思路雖然簡單,但是有一定依據。實驗表明這個算法效果也要略優先于寬度優先遍歷策略。
花生代理動態換IP軟件可以實現全國城市IP一自動切換,千萬動態IP池,支持過濾,支持電腦手機多端使用,數萬隨機撥號線路,24小時不間斷供應動態IP。