下面作一簡單介紹:
(1)抓取友好性
互聯網資源龐大的數量級,要求抓取系統盡可能地高效利用帶寬,在有限的硬件和帶寬資源下盡可能多地抓取到有價值的資源。這就造成另一個問題:耗費被抓網站的帶寬造成訪問壓力,如果程度過大,將直接影響被抓網站的正常用戶訪問行為。因此,在抓取過程中就要進行一定的抓取壓力控制,達到既不影響網站的正常用戶訪問又能盡量多地抓取到有價值資源的目的。
通常,最基本的是基于IP的壓力控制。因為如果基于域名,可能存在一個域名對多個IP(很多大網站)或多個域名對應同一個IP(小網站共享IP)的問題。實際中往往根據P及域名的多種條件進行壓力調配控制。同時,站長平臺也推出了壓力反饋工具,站長可以人工調配對自己網站的抓取壓力,這時!百度spider將優先按照站長的要求進行抓取壓力控制。
對同一站點的抓取速度控制一般分為兩類:
其一,一段時間內的抓取頻率;
其二,段時間內的抓取流量。
同一站點不同的時間抓取速度也不同。例如,夜晚抓取的可能就會快一些,也視具體站點類型而定,主要思想是錯開正常用戶訪問高峰,不斷調整。對于不同站點,也需要不同的抓取速度。
(2)常用抓取返回碼示意
下面簡單介紹幾種百度支持的返回碼。
①最常見的404代表“NOT FOUND”,認為網頁已經失效,通常將在庫中刪除,同時短期內如果spider再次發現這條URL.也不會抓取。
②503代表“Service unavailabl ,認為網頁臨時不可訪問,通常網站臨時關閉,帶寬有限等會產生這種情況。對于網頁返回503百度spider不會把這條url直接刪除,同時短期內將會反復訪問幾次,如果網頁已恢復,則正常抓取;如果繼續503狀態碼,那么這條URL仍會被認為是失效鏈接,從庫中刪除。
③403代表Forbidden,認為網頁目前禁止訪問。如果是新URL, spider暫時不抓取,短期內同樣會反復訪問幾次;如果是已收錄UHL,不會直接刪除,短期內同樣反復訪認為是失效鏈接,從庫中刪除。問幾次。如果網頁正常訪問,則正常抓取;如果仍然禁止訪問,那么這條URL也會被。
④301代表“Moved”認為網頁重定向至新URL當遇到站點遷移 域名更換、站點改版的情況時,推薦使用301返回碼,同田時使用站長平臺網站改版工具,以減少改版對網站流量造成的損失。
(3)多種URL重定向的識別
互聯網中的一部分網頁因為各種各樣的原因存在URL重定向狀態,為了對這部分資源正常抓取,要求 spider對URL重定向進行識別判斷,同時防止作弊行為。重定向可分為三類:htp30x重定向、 meta refresh重定向和js重定向。另外,百度也支持Canonical標簽,在效果上也可以認為是一種間接的重定向。
(4)抓取優先級調配
由于互聯網資源規模巨大以及變化迅速,對于搜索引擎來說,全部抓取到并合理地更新,保持一致性幾乎是不可能的事情,因此要求抓取系統設計一套合理的抓取優先級調配策略,主要包括深度優先遍歷策略、寬度優先遍歷策略、pr優先策略、反鏈策略、社會化分享指導策略等。每個策略各有優劣,在實際情況中往往是多種策略結合使用,以達到最優的抓取效果。
(5)重復URL的過濾
spider在抓取過程中需要判斷一個頁面是否已經抓取過了,如果還沒有抓取,再進行抓取網頁的行為,并放在已抓取網址集合中。判斷是否已經抓取其中涉及最核心的是快速查找并對比,同時于涉及URL歸一化識別。例如,一個URL中包含大量無效參數,而實際是同一個頁面,這將視為同一個URL來對待。
(6)暗網數據的獲取
互聯網中存在著大量的搜索引擎暫時無法抓取到的數據,被稱為暗網數據。一方面,很多網站的大量數據存在于網絡數據庫中,spider難以采用抓取網頁的方式獲得完整內容;另一方面,由于網絡環境、網站本身不符合規范、孤島等問題,也會造成搜索引擎無法抓取。目前,對于暗網數據的獲取,主要思路仍然是通過開放平臺采用數據提交的方式來解決,如“百度站長平臺”“百度開放平臺”等。
(7)抓取反作弊
spider在抓取過程中往往會遇到所謂抓取黑洞,或者面臨大量低質量頁面的因擾這就要求抓取系統中同樣需要設計一套完善的抓取反作弊系統。例如,分析URL特征分析頁面大小及內容、分析站點規模對應抓取規模等。Spider抓取系統是搜索引擎數據來源的重要保證,這對于網站制作、網站建設、網站設計者來說就是機遇和突破口,具體的做法就千差萬別了。
本文地址:http://m.knowyourextract.com//article/2513.html