您當(dāng)前的位置:首頁(yè) >> SEO知識(shí) >> 網(wǎng)站幫助
Robots協(xié)議是Web站點(diǎn)和搜索引擎爬蟲(chóng)交互的一種方式,Robots.txt是存放在站點(diǎn)根目錄下的一個(gè)純文本文件。該文件可以指定搜索引擎爬蟲(chóng)只抓取指定的內(nèi)容,或者是禁止搜索引擎爬蟲(chóng)抓取網(wǎng)站的部分或全部?jī)?nèi)容。當(dāng)一個(gè)搜索引擎爬蟲(chóng)訪問(wèn)一個(gè)站點(diǎn)時(shí),它會(huì)首先檢查該站點(diǎn)根目錄下是否存在robots.txt,如果存在,搜索引擎爬蟲(chóng)就會(huì)按照該文件中的內(nèi)容來(lái)確定訪問(wèn)的范圍;如果該文件不存在,那么搜索引擎爬蟲(chóng)就沿著鏈接抓取。
另外,robots.txt必須放置在一個(gè)站點(diǎn)的根目錄下,而且文件名必須全部小寫(xiě)。
如果搜索引擎爬蟲(chóng)要訪問(wèn)的網(wǎng)站地址是http://www.w3.org/,那么robots.txt文件必須能夠通過(guò)http://www.w3.org/robots.txt打開(kāi)并看到里面的內(nèi)容。
具體使用格式如下:
(1)User-agent:
用于描述搜索引擎爬蟲(chóng)的名字。在Robots.txt文件中,如果有多條User-agent記錄,說(shuō)明有多個(gè)搜索引擎爬蟲(chóng)會(huì)受到該協(xié)議的限制,對(duì)該文件來(lái)說(shuō),至少要有一條User-agent記錄。如果該項(xiàng)的值設(shè)為*,則該協(xié)議對(duì)任何搜索引擎爬蟲(chóng)均有效,在Robots.txt文件中,“User-agent:*”這樣的記錄只能有一條。
(2)Disallow:
用于描述不希望被訪問(wèn)到的一個(gè)URL。這個(gè)URL可以是一條完整的路徑,也可以是部分路徑,任何以Disallow開(kāi)頭的URL均不會(huì)被Robot訪問(wèn)到。
下面舉例來(lái)說(shuō)明robots.txt的具體用法:
【例1】通過(guò)/robots.txt禁止所有搜索引擎爬蟲(chóng)抓取/bin/cgi/目錄,以及/tmp/目錄和/foo.html文件,設(shè)置方法如下:
User-agent:*
Disallow:/bin/cgi/
Disallow:/tmp/
Disallow:/foo.html
【例2】通過(guò)/robots.txt只允許某個(gè)搜索引擎抓取,而禁止其他的搜索引擎抓取。如:只允許名為slurp的搜索引擎爬蟲(chóng)抓取,而拒絕其他的搜索引擎爬蟲(chóng)抓取/cgi/目錄下的內(nèi)容,設(shè)置方法如下:
User-agent:*
Disallow:/cgi/
User-agent:slurp
Disallow:
【例3】禁止任何搜索引擎抓取我的網(wǎng)站,設(shè)置方法如下:
User-agent:*
Disallow:/
【例4】只禁止某個(gè)搜索引擎抓取我的網(wǎng)站。如:只禁止名為slurp的搜索引擎蜘蛛抓取,設(shè)置方法如下:
User-agent:slurp
Disallow:/
搜索引擎爬蟲(chóng)必須要遵守Robots協(xié)議并執(zhí)行Web站點(diǎn)的要求。因此搜索引擎爬蟲(chóng)需要有一個(gè)分析Robots協(xié)議的模塊,并嚴(yán)格按照Robots協(xié)議的規(guī)定抓取Web主機(jī)允許訪問(wèn)的目錄和網(wǎng)頁(yè)。
當(dāng)然,Robots.txt只是一個(gè)協(xié)議,如果搜索引擎爬蟲(chóng)的設(shè)計(jì)者不遵循這個(gè)協(xié)議,網(wǎng)站管理員也無(wú)法阻止搜索引擎爬蟲(chóng)對(duì)于某些頁(yè)面的訪問(wèn),但一般的搜索引擎爬蟲(chóng)都會(huì)遵循這些協(xié)議,而且網(wǎng)站管理員還可以通過(guò)其他方式來(lái)拒絕網(wǎng)絡(luò)蜘蛛對(duì)某些網(wǎng)頁(yè)的抓取。
搜索引擎爬蟲(chóng)在下載網(wǎng)頁(yè)的時(shí)候,會(huì)去識(shí)別網(wǎng)頁(yè)的HTML代碼,在其代碼部分會(huì)有META標(biāo)識(shí)。通過(guò)這些標(biāo)識(shí),可以告訴搜索引擎爬蟲(chóng)本網(wǎng)頁(yè)是否需要被抓取,還可以告訴搜索引擎爬蟲(chóng)本網(wǎng)頁(yè)中的鏈接是否需要被繼續(xù)跟蹤。例如:表示本網(wǎng)頁(yè)不需要被抓取,但是網(wǎng)頁(yè)內(nèi)的鏈接需要被跟蹤。
現(xiàn)在一般的網(wǎng)站都希望搜索引擎能更全面地抓取自己網(wǎng)站的網(wǎng)頁(yè),因?yàn)檫@樣可以讓更多的訪問(wèn)者能通過(guò)搜索引擎找到此網(wǎng)站。為了讓本網(wǎng)站的網(wǎng)頁(yè)更全面地被抓取到,網(wǎng)站管理員可以建立一個(gè)網(wǎng)站地圖,即Site Map。許多搜索引擎爬蟲(chóng)會(huì)把sitemap.html文件作為一個(gè)網(wǎng)站網(wǎng)頁(yè)爬取的入口,網(wǎng)站管理員可以把網(wǎng)站內(nèi)部所有網(wǎng)頁(yè)的鏈接放在這個(gè)文件里面,那么搜索引擎爬蟲(chóng)可以很方便地把整個(gè)網(wǎng)站抓取下來(lái),避免遺漏某些網(wǎng)頁(yè),也會(huì)減小對(duì)網(wǎng)站服務(wù)器的負(fù)擔(dān)。