北京網(wǎng)站建設(shè)多年網(wǎng)站建設(shè)經(jīng)驗,依托強大的服務(wù)優(yōu)勢,為您提供專業(yè)的北京網(wǎng)站建設(shè)服務(wù)
作者:鵬飛網(wǎng)絡(luò) 時間:2009-5-16 分類:北京網(wǎng)站建設(shè)
1,是收費我想這個大家都知道了. 廣度優(yōu)先是指網(wǎng)絡(luò)蜘蛛會先抓取起始網(wǎng)頁中鏈接的所有網(wǎng)頁,然后再選擇其中的一個鏈接網(wǎng)頁,繼續(xù)抓取在此網(wǎng)頁中鏈接的所有網(wǎng)頁。這是常用的方式,因為這個方法可以讓網(wǎng)絡(luò)蜘蛛并行處理,提高其抓取速度。深度優(yōu)先是指網(wǎng)絡(luò)蜘蛛會從起始頁開始,一個鏈接一個鏈接跟蹤下去,處理完這條線路之后再轉(zhuǎn)入下一個起始頁,繼續(xù)跟蹤鏈接。這個方法有個優(yōu)點是網(wǎng)絡(luò)蜘蛛在設(shè)計的時候比較容易。兩種策略的區(qū)別,下圖的說明會更加明確。
由于不可能抓取所有的網(wǎng)頁,有些網(wǎng)絡(luò)蜘蛛對一些不太重要的網(wǎng)站,設(shè)置了訪問的層數(shù)。例如,在上圖中,A為起始網(wǎng)頁,屬于0層,B、C、D、E、F屬于第1層,G、H屬于第2層, I屬于第3層。如果網(wǎng)絡(luò)蜘蛛設(shè)置的訪問層數(shù)為2的話,網(wǎng)頁I是不會被訪問到的。這也讓有些網(wǎng)站上一部分網(wǎng)頁能夠在搜索引擎上搜索到,另外一部分不能被搜索到。對于網(wǎng)站設(shè)計者來說,扁平化的網(wǎng)站結(jié)構(gòu)設(shè)計有助于搜索引擎抓取其更多的網(wǎng)頁。
網(wǎng)絡(luò)蜘蛛在訪問網(wǎng)站網(wǎng)頁的時候,經(jīng)常會遇到加密數(shù)據(jù)和網(wǎng)頁權(quán)限的問題,有些網(wǎng)頁是需要會員權(quán)限才能訪問。當(dāng)然,網(wǎng)站的所有者可以通過協(xié)議讓網(wǎng)絡(luò)蜘蛛不去抓取(下小節(jié)會介紹),但對于一些出售報告的網(wǎng)站,他們希望搜索引擎能搜索到他們的報告,但又不能完全**的讓搜索者查看,這樣就需要給網(wǎng)絡(luò)蜘蛛提供相應(yīng)的用戶名和密碼。網(wǎng)絡(luò)蜘蛛可以通過所給的權(quán)限對這些網(wǎng)頁進行網(wǎng)頁抓取,從而提供搜索。而當(dāng)搜索者點擊查看該網(wǎng)頁的時候,同樣需要搜索者提供相應(yīng)的權(quán)限驗證。
網(wǎng)站與網(wǎng)絡(luò)蜘蛛
網(wǎng)絡(luò)蜘蛛需要抓取網(wǎng)頁,不同于一般的訪問,如果控制不好,則會引起網(wǎng)站服務(wù)器負(fù)擔(dān)過重。今年4月,淘寶就因為雅虎搜索引擎的網(wǎng)絡(luò)蜘蛛抓取其數(shù)據(jù)引起淘寶網(wǎng)服務(wù)器的不穩(wěn)定。網(wǎng)站是否就無法和網(wǎng)絡(luò)蜘蛛交流呢?其實不然,有多種方法可以讓網(wǎng)站和網(wǎng)絡(luò)蜘蛛進行交流。一方面讓網(wǎng)站管理員了解網(wǎng)絡(luò)蜘蛛都來自哪兒,做了些什么,另一方面也告訴網(wǎng)絡(luò)蜘蛛哪些網(wǎng)頁不應(yīng)該抓取,哪些網(wǎng)頁應(yīng)該更新。
每個網(wǎng)絡(luò)蜘蛛都有自己的名字,在抓取網(wǎng)頁的時候,都會向網(wǎng)站標(biāo)明自己的身份。網(wǎng)絡(luò)蜘蛛在抓取網(wǎng)頁的時候會發(fā)送一個請求,這個請求中就有一個字段為User- agent,用于標(biāo)識此網(wǎng)絡(luò)蜘蛛的身份。例如Google網(wǎng)絡(luò)蜘蛛的標(biāo)識為GoogleBot,Baidu網(wǎng)絡(luò)蜘蛛的標(biāo)識為BaiDuSpider, Yahoo網(wǎng)絡(luò)蜘蛛的標(biāo)識為Inktomi Slurp。如果在網(wǎng)站上有訪問日志記錄,網(wǎng)站管理員就能知道,哪些搜索引擎的網(wǎng)絡(luò)蜘蛛過來過,什么時候過來的,以及讀了多少數(shù)據(jù)等等。如果網(wǎng)站管理員發(fā)現(xiàn)某個蜘蛛有問題,就通過其標(biāo)識來和其所有者聯(lián)系。下面是博客中)2004年5月15日的搜索引擎訪問日志:
網(wǎng)絡(luò)蜘蛛進入一個網(wǎng)站,一般會訪問一個特殊的文本文件Robots.txt,這個文件一般放在網(wǎng)站服務(wù)器的根目錄下。網(wǎng)站管理員可以通過robots.txt來定義哪些目錄網(wǎng)絡(luò)蜘蛛不能訪問,或者哪些目錄對于某些特定的網(wǎng)絡(luò)蜘蛛不能訪問。例如有些網(wǎng)站的可執(zhí)行文件目錄和臨時文件目錄不希望被搜索引擎搜索到,那么網(wǎng)站管理員就可以把這些目錄定義為拒絕訪問目錄。Robots.txt語法很簡單,例如如果對目錄沒有任何限制,可以用以下兩行來描述:
User-agent: *
Disallow:
當(dāng)然,Robots.txt只是一個協(xié)議,如果網(wǎng)絡(luò)蜘蛛的設(shè)計者不遵循這個協(xié)議,網(wǎng)站管理員也無法阻止網(wǎng)絡(luò)蜘蛛對于某些頁面的訪問,但一般的網(wǎng)絡(luò)蜘蛛都會遵循這些協(xié)議,而且網(wǎng)站管理員還可以通過其它方式來拒絕網(wǎng)絡(luò)蜘蛛對某些網(wǎng)頁的抓取。
網(wǎng)絡(luò)蜘蛛在下載網(wǎng)頁的時候,會去識別網(wǎng)頁的HTML代碼,在其代碼的部分,會有META標(biāo)識。通過這些標(biāo)識,可以告訴網(wǎng)絡(luò)蜘蛛本網(wǎng)頁是否需要被抓取,還可以告訴網(wǎng)絡(luò)蜘蛛本網(wǎng)頁中的鏈接是否需要被繼續(xù)跟蹤。例如:表示本網(wǎng)頁不需要被抓取,但是網(wǎng)頁內(nèi)的鏈接需要被跟蹤。
關(guān)于Robots.txt的語法和META Tag語法,有興趣的讀者查看文獻[4]
現(xiàn)在一般的網(wǎng)站都希望搜索引擎能更全面的抓取自己網(wǎng)站的網(wǎng)頁,因為這樣可以讓更多的訪問者能通過搜索引擎找到此網(wǎng)站。為了讓本網(wǎng)站的網(wǎng)頁更全面被抓取到,網(wǎng)站管理員可以建立一個網(wǎng)站地圖,即Site Map。許多網(wǎng)絡(luò)蜘蛛會把sitemap.htm文件作為一個網(wǎng)站網(wǎng)頁爬取的入口,網(wǎng)站管理員可以把網(wǎng)站內(nèi)部所有網(wǎng)頁的鏈接放在這個文件里面,那么網(wǎng)絡(luò)蜘蛛可以很方便的把整個網(wǎng)站抓取下來,避免遺漏某些網(wǎng)頁,也會減小對網(wǎng)站服務(wù)器的負(fù)擔(dān)。
內(nèi)容提取
搜索引擎建立網(wǎng)頁索引,處理的對象是文本文件。對于網(wǎng)絡(luò)蜘蛛來說,抓取下來網(wǎng)頁包括各種格式,包括html、圖片、doc、pdf、多媒體、動態(tài)網(wǎng)頁及其它格式等。這些文件抓取下來后,需要把這些文件中的文本信息提取出來。準(zhǔn)確提取這些文檔的信息,一方面對搜索引擎的搜索準(zhǔn)確性有重要作用,另一方面對于網(wǎng)絡(luò)蜘蛛正確跟蹤其它鏈接有一定影響。
對于doc、pdf等文檔,這種由專業(yè)廠商提供的軟件生成的文檔,廠商都會提供相應(yīng)的文本提取接口。網(wǎng)絡(luò)蜘蛛只需要調(diào)用這些插件的接口,就可以輕松的提取文檔中的文本信息和文件其它相關(guān)的信息。