搜索引擎蜘蛛在抓取網站過程中的策略
蜘蛛在爬行過程中面臨著復雜的網絡環境。為了使系統能夠在不給網站體驗造成壓力的情況下,盡可能多地抓取有價值的資源,保持系統頁面與實際環境的一致性,設計了更加復雜的抓取策略。下面簡要介紹爬行過程中涉及的主要策略類型
1、抓取友好 抓取壓力部署降低了訪問網站的壓力
2、通用抓取返回碼指示
3、多個URL重定向的標識
4、抓取優先級分配
5、重復的URL篩選
6、暗網數據采集
7、抓取反作弊
8、提高爬行效率和有效利用帶寬
一、抓取友好
互聯網資源的巨大數量級要求爬行系統盡可能**地利用帶寬,在有限的硬件和帶寬資源下,盡可能多地抓取有價值的資源。這就產生了另一個問題,消耗了被抓取網站的帶寬并造成訪問壓力。如果度過大,將直接影響被抓取網站的正常用戶訪問行為。因此,在抓取過程中,應進行一定的抓取壓力控制,以達到在不影響網站正常用戶訪問的前提下,盡可能多地獲取有價值的資源的目的。
通常,** 基本的是基于ip的壓力控制。這是因為如果基于域名,可能存在一個域名對應多個ip(許多大型網站)或多個域名對應同一ip(小型網站共享ip)的問題。在實際應用中,壓力分配控制通常是根據ip和域名的不同情況來進行的。同時,站長平臺也推出了壓力反饋工具。網站管理員可以手動調整網站的爬行壓力。此時,百度蜘蛛將根據站長的要求優先進行抓取壓力控制。
同一站點的爬行速度控制一般分為兩類 一是一段時間內的爬行頻率;二是一段時間內的爬行流量。同一站點在不同時間的爬行速度不同。例如,夜間時,爬行速度可能更快,這取決于特定的網站類型。其主要思想是錯開正常用戶的訪問高峰,不斷調整。對于不同的站點,也需要不同的爬行速度。
二、通用抓取返回碼指示
簡要介紹百度支持的幾種返回碼
1) ** 常見的404代表“未找到”。認為網頁已過期,通常會在庫中刪除。同時,如果蜘蛛在短期內再次找到這個url,將不會被抓取;
2) 503代表“服務不可用”,認為網頁暫時無法訪問,通常網站暫時關閉,帶寬有限。對于返回503狀態碼的網頁,百度蜘蛛不會直接刪除該網址,短期內會多次重復訪問。如果網頁已還原,則將正常對其進行抓取;如果繼續返回503,則此URL仍將視為斷開的鏈接并將其從庫中刪除。
3) 403代表“禁止”,并認為該網頁目前被禁止訪問。如果是新的url,蜘蛛暫時不會爬行,短期內會多次重復訪問;如果是采集的url,則不會直接刪除,短期內會多次訪問。如果網頁被正常訪問,將被正常抓取;如果訪問仍然被禁止,則此url也將被視為斷開的鏈接并從庫中刪除。
4) 301代表被“永久地移動”,認為網頁會重定向到新的url。在網站遷移、域名替換、網站改版等方面,建議使用301返回碼,同時使用站長平臺改版工具,減少改版帶來的網站流量損失。
三、多個URL重定向的標識
由于各種原因,Internet上的某些網頁具有url重定向狀態。為了正常地抓取這部分資源,蜘蛛需要識別和判斷url重定向并防止欺騙。重定向可分為三類 http 30x重定向、mate刷新重定向和js重定向。此外,百度還支持規范化標簽,可以認為是一種間接重定向。
四、抓取優先級分配
由于互聯網資源規模的巨大而快速的變化,搜索引擎幾乎不可能全部抓取并合理更新以保持一致性,這就要求爬行系統設計一套合理的爬行優先級部署策略。主要包括 深度優先穿越策略、寬度優先穿越策略、PR優先策略、反鏈接策略、社會共享引導策略等。每種戰略都有其優缺點。在實際應用中,為了達到** 佳的抓取效果,常常采用多種策略相結合。
五、重復的URL篩選
蜘蛛需要判斷一個頁面在爬行過程中是否已經被抓取,如果還沒有被爬行,那么爬行該頁面并將其放入已爬行的URL集合中。判斷是否涉及核心是快速搜索和比較。它還涉及url規范化標識。例如,一個url包含許多無效參數,實際上是同一個頁面,它將被視為同一個url。
六、暗網數據采集
互聯網上有很多數據暫時無法被搜索引擎抓取,被稱為暗網數據。一方面,網絡數據庫中存在大量的網站數據,蜘蛛通過抓取網頁很難獲得完整的內容,引擎無法抓取。目前,獲取暗網數據的主要思路仍然是通過開放平臺使用數據提交方式來解決問題,如“百度站長平臺”等。
七、抓取反作弊
蜘蛛在爬行過程中經常遇到所謂的爬行黑洞或面對大量的低質量頁面,這就要求爬行系統也要設計一個完整的爬行防作弊系統。例如url特征分析、頁面大小和內容分析、爬行規模對應的站點規模分析等。
- 如何優化:
- 網站url改版不收錄 網站建設哪個 奉賢網站改版哪家好 公司網站改版價格會變嗎 網站改版注意哪些 陽江網站開發 孝義網站定制公司 日本跨境選品軟件網站開發 本溪網站定制報價 鄭州旅游網站開發運營