


下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
中文搜索引擎技術揭密:網絡蜘蛛
網絡蜘蛛基本原理
網絡蜘蛛即WebSpider,是一個很形象的名字。把互聯網比喻成一個蜘蛛網,那么Spider就是在網上爬來爬去的蜘蛛。網絡蜘蛛是通過網頁的鏈接地址來尋找網頁,從網站某一個頁面(通常是首頁)開始,讀取網頁的內容,找到在網頁中的其它鏈接地址,然后通過這些鏈接地址尋找下一個網頁,這樣一直循環下去,直到把這個網站所有的網頁都抓取完為止。如果把整個互聯網當成一個網站,那么網絡蜘蛛就可以用這個原理把互聯網上所有的網頁都抓取下來。
對于搜索引擎來說,要抓取互聯網上所有的網頁幾乎是不可能的,從目前公布的數據來看,容量最大的搜索引擎也不過是抓取了整個網頁數量的百分之四十左右。這其中的原因一方面是抓取技術的瓶頸,無法遍歷所有的網頁,有許多網頁無法從其它網頁的鏈接中找到;另一個原因是存儲技術和處理技術的問題,如果按照每個頁面的平均大小為20K計算(包含圖片),100億網頁的容量是100×2000G字節,即使能夠存儲,下載也存在問題(按照一臺機器每秒下載20K計算,需要340臺機器不停的下載一年時間,才能把所有網頁下載完畢)。同時,由于數據量太大,在提供搜索時也會有效率方面的影響。因此,許多搜索引擎的網絡蜘蛛只是抓取那些重要的網頁,而在抓取的時候評價重要性主要的依據是某個網頁的鏈接深度。
在抓取網頁的時候,網絡蜘蛛一般有兩種策略:廣度優先和深度優先。
廣度優先是指網絡蜘蛛會先抓取起始網頁中鏈接的所有網頁,然后再選擇其中的一個鏈接網頁,繼續抓取在此網頁中鏈接的所有網頁。這是最常用的方式,因為這個方法可以讓網絡蜘蛛并行處理,提高其抓取速度。深度優先是指網絡蜘蛛會從起始頁開始,一個鏈接一個鏈接跟蹤下去,處理完這條線路之后再轉入下一個起始頁,繼續跟蹤鏈接。這個方法有個優點是網絡蜘蛛在設計的時候比較容易。兩種策略的區別,下圖的說明會更加明確。
由于不可能抓取所有的網頁,有些網絡蜘蛛對一些不太重要的網站,設置了訪問的層數。例如,在上圖中,A為起始網頁,屬于0層,B、C、D、E、F屬于第1層,G、H屬于第2層,I屬于第3層。如果網絡蜘蛛設置的訪問層數為2的話,網頁I是不會被訪問到的。這也讓有些網站上一部分網頁能夠在搜索引擎上搜索到,另外一部分不能被搜索到。對于網站設計者來說,扁平化的網站結構設計有助于搜索引擎抓取其更多的網頁。
網絡蜘蛛在訪問網站網頁的時候,經常會遇到加密數據和網頁權限的問題,有些網頁是需要會員權限才能訪問。當然,網站的所有者可以通過協議讓網絡蜘蛛不去抓取(下小節會介紹),但對于一些出售報告的網站,他們希望搜索引擎能搜索到他們的報告,但又不能完全**的讓搜索者查看,這樣就需要給網絡蜘蛛提供相應的用戶名和密碼。網絡蜘蛛可以通過所給的權限對這些網頁進行網頁抓取,從而提供搜索。而當搜索者點擊查看該網頁的時候,同樣需要搜索者提供相應的權限驗證。網站與網絡蜘蛛
網絡蜘蛛需要抓取網頁,不同于一般的訪問,如果控制不好,則會引起網站服務器負擔過重。今年4月,淘寶)就因為雅虎搜索引擎的網絡蜘蛛抓取其數據引起淘寶網服務器的不穩定。網站是否就無法和網絡蜘蛛交流呢?其實不然,有多種方法可以讓網站和網絡蜘蛛進行交流。一方面讓網站管理員了解網絡蜘蛛都來自哪兒,做了些什么,另一方面也告訴網絡蜘蛛哪些網頁不應該抓取,哪些網頁應該更新。
每個網絡蜘蛛都有自己的名字,在抓取網頁的時候,都會向網站標明自己的身份。網絡蜘蛛在抓取網頁的時候會發送一個請求,這個請求中就有一個字段為User-agent,用于標識此網絡蜘蛛的身份。例如Google網絡蜘蛛的標識為GoogleBot,Baidu網絡蜘蛛的標識為BaiDuSpider,Yahoo網絡蜘蛛的標識為InktomiSlurp。如果在網站上有訪問日志記錄,網站管理員就能知道,哪些搜索引擎的網絡蜘蛛過來過,什么時候過來的,以及讀了多少數據等等。如果網站管理員發現某個蜘蛛有問題,就通過其標識來和其所有者聯系。下面是博客中)2004年5月15日的搜索引擎訪問日志:
網絡蜘蛛進入一個網站,一般會訪問一個特殊的文本文件Robots.txt,這個文件一般放在網站服務器的根目錄下,/robots.txt。網站管理員可以通過robots.txt來定義哪些目錄網絡蜘蛛不能訪問,或者哪些目錄對于某些特定的網絡蜘蛛不能訪問。例如有些網站的可執行文件目錄和臨時文件目錄不希望被搜索引擎搜索到,那么網站管理員就可以把這些目錄定義為拒絕訪問目錄。Robots.txt語法很簡單,例如如果對目錄沒有任何限制,可以用以下兩行來描述:
User-agent:*
Disallow:
當然,Robots.txt只是一個協議,如果網絡蜘蛛的設計者不遵循這個協議,網站管理員也無法阻止網絡蜘蛛對于某些頁面的訪問,但一般的網絡蜘蛛都會遵循這些協議,而且網站管理員還可以通過其它方式來拒絕網絡蜘蛛對某些網頁的抓取。
網絡蜘蛛在下載網頁的時候,會去識
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 交通投資AI應用行業深度調研及發展項目商業計劃書
- 環保塑料回收技術企業制定與實施新質生產力項目商業計劃書
- 高溫高壓環境作業輔助機器人行業跨境出海項目商業計劃書
- 高端定制男士襯衫品牌行業深度調研及發展項目商業計劃書
- 農林牧漁業產品流通服務行業跨境出海項目商業計劃書
- 消費者需求多樣化研究-洞察闡釋
- 郵政儲蓄AI應用行業跨境出海項目商業計劃書
- 至陰穴傳統手工藝的現代化轉型-洞察闡釋
- 數據科學中的組合優化方法-洞察闡釋
- 基于敏捷開發的團隊協作研究-洞察闡釋
- GB 5009.74-2014食品安全國家標準食品添加劑中重金屬限量試驗
- FZ/T 10007-2018棉及化纖純紡、混紡本色紗線檢驗規則
- 《薪酬管理的國內外文獻綜述》1100字
- 設備調撥單表格
- 工廠電氣安全培訓課件
- 項目產出科技資源匯交方案
- DB63T1743-2019青海省建筑工程資料管理規程
- 文稿成果pcb承認書
- (精華完整版)國家開放大學電大本科《農業生態學》網絡課形考網考作業及答案
- 電子招生網站設計--網絡課程設計
- 運動控制系統思考題參考答案阮毅
評論
0/150
提交評論