robots.txt文件的格式
robots文件往往放置于根目錄下,包含一條或更多的記錄,這些記錄通過空行分開(以CR,CR/NL,?or?NL作為結(jié)束符),每一條記錄的格式如下所示:
"<field>:<optional?space><value><optionalspace>"
在該文件中可以使用#進(jìn)行注解,具體使用方法和UNIX中的慣例一樣。該文件中的記錄通常以一行或多行User-agent開始,后面加上若干Disallow和Allow行,詳細(xì)情況如下:
User-agent:
該項(xiàng)的值用于描述搜索引擎robot的名字。在"robots.txt"文件中,如果有多條User-agent記錄說明有多個(gè)robot會(huì)受到"robots.txt"的限制,對(duì)該文件來說,至少要有一條User-agent記錄。如果該項(xiàng)的值設(shè)為*,則對(duì)任何robot均有效,在"robots.txt"文件中,"User-agent:*"這樣的記錄只能有一條。如果在"robots.txt"文件中,加入"User-agent:SomeBot"和若干Disallow、Allow行,那么名為"SomeBot"只受到"User-agent:SomeBot"后面的?Disallow和Allow行的限制。
Disallow:
該項(xiàng)的值用于描述不希望被訪問的一組URL,這個(gè)值可以是一條完整的路徑,也可以是路徑的非空前綴,以Disallow項(xiàng)的值開頭的URL不會(huì)被?robot訪問。例如"Disallow:/help"禁止robot訪問/help.html、/helpabc.html、/help/index.html,而"Disallow:/help/"則允許robot訪問/help.html、/helpabc.html,不能訪問/help/index.html。"Disallow:"說明允許robot訪問該網(wǎng)站的所有url,在"/robots.txt"文件中,至少要有一條Disallow記錄。如果"/robots.txt"不存在或者為空文件,則對(duì)于所有的搜索引擎robot,該網(wǎng)站都是開放的。
Allow:
該項(xiàng)的值用于描述希望被訪問的一組URL,與Disallow項(xiàng)相似,這個(gè)值可以是一條完整的路徑,也可以是路徑的前綴,以Allow項(xiàng)的值開頭的URL?是允許robot訪問的。例如"Allow:/hibaidu"允許robot訪問/hibaidu.htm、/hibaiducom.html、/hibaidu/com.html。一個(gè)網(wǎng)站的所有URL默認(rèn)是Allow的,所以Allow通常與Disallow搭配使用,實(shí)現(xiàn)允許訪問一部分網(wǎng)頁同時(shí)禁止訪問其它所有URL的功能。
使用"*"and"$":Baiduspider支持使用通配符"*"和"$"來模糊匹配url。
"*"?匹配0或多個(gè)任意字符
"$"?匹配行結(jié)束符。
最后需要說明的是:百度會(huì)嚴(yán)格遵守robots的相關(guān)協(xié)議,請(qǐng)注意區(qū)分您不想被抓取或收錄的目錄的大小寫,百度會(huì)對(duì)robots中所寫的文件和您不想被抓取和收錄的目錄做精確匹配,否則robots協(xié)議無法生效。
閱讀本文的人還可以閱讀: