robots.txt文件的格式
robots文件往往放置于根目录下,包含一条或更多的记录,这些记录通过空行分开(以CR,CR/NL, or NL作为结束符),每一条记录的格式如下所示:
<field>:<optional space><value><optionalspace>
User-agent
在该文件中可以使用#进行注解,具体使用方法和UNIX中的惯例一样。该文件中的记录通常以一行或多行User-agent开始,后面加上若干Disallow和Allow行,详细情况如下:
User-agent:该项的值用于描述搜索引擎robot的名字。在”robots.txt”文件中,如果有多条User-agent记录说明有多个robot会受到”robots.txt”的限制,对该文件来说,至少要有一条User-agent记录。如果该项的值设为,则对任何robot均有效,在”robots.txt”文件中,”User-agent:”这样的记录只能有一条。如果在”robots.txt”文件中,加入”User-agent:SomeBot”和若干Disallow、Allow行,那么名为”SomeBot”只受到”User-agent:SomeBot”后面的 Disallow和Allow行的限制。
Disallow
Disallow:该项的值用于描述不希望被访问的一组URL,这个值可以是一条完整的路径,也可以是路径的非空前缀,以Disallow项的值开头的URL不会被 robot访问。例如”Disallow:/help”禁止robot访问/help.html、/helpabc.html、/help/index.html,而”Disallow:/help/”则允许robot访问/help.html、/helpabc.html,不能访问/help/index.html。”Disallow:”说明允许robot访问该网站的所有url,在”/robots.txt”文件中,至少要有一条Disallow记录。如果”/robots.txt”不存在或者为空文件,则对于所有的搜索引擎robot,该网站都是开放的。
Allow
Allow:该项的值用于描述希望被访问的一组URL,与Disallow项相似,这个值可以是一条完整的路径,也可以是路径的前缀,以Allow项的值开头的URL 是允许robot访问的。例如”Allow:/hibaidu”允许robot访问/hibaidu.htm、/hibaiducom.html、/hibaidu/com.html。一个网站的所有URL默认是Allow的,所以Allow通常与Disallow搭配使用,实现允许访问一部分网页同时禁止访问其它所有URL的功能。
通配符
使用“*”和“$”:Baiduspider支持使用通配符“*”和“$”来模糊匹配url。
“*”:匹配0或多个任意字符
“$”:匹配行结束符
几个robots.txt的示例
例1.禁止所有搜索引擎访问网站的任何部分;
User-agent:*
Disallow:/
例2.允许所有的robot访问;
User-agent:*
Allow:/
例3.仅禁止Baiduspider访问您的网站;
User-agent:Baiduspider
Disallow:/
例4.仅允许Baiduspider访问您的网站;
User-agent:Baiduspider
Allow:/
User-agent:*
Disallow:/
例5.仅允许Baiduspider以及Googlebot访问;
User-agent:Baiduspider
Allow:/
User-agent:Googlebot
Allow:/
User-agent:*
Disallow:/
例6.禁止spider访问特定目录 在这个例子中,该网站有三个目录对搜索引擎的访问 做了限制,即robot不会访问这三个目录。需要注意的 是对每一个目录必须分开声明,而不能写成Disallow: /cgi-bin/ /temp/”;
User-agent:*
Disallow:/cgi-bin/
Disallow:/temp/
Disallow:/~joe/
例7.使用“$”限制访问url,仅允许访问以“.htm”为后缀的url;
User-agent:*
Allow:/.htm$
Disallow:/
例8.禁止访问网站中所有的动态页面;
User-agent:*
Disallow:/*?*
例9.禁止Baiduspider抓取网站上所有图片仅允许抓取网页,禁止抓取任何图片;
User-agent:Baiduspider
Disallow:/*.jpg$
Disallow:/*.jpegs$
Disallow:/*.gif$
Disallow:/*.png$
Disallow:/*.bmp$
例10.仅允许Baiduspider抓取网页和gif格式的图片,不允许抓取其他格式图片;
User-agent:Baiduspider
Allow:/*.gif$
Disallow:/*.jpg$
Disallow:/*.jpegs$
Disallow:/*.png$
Disallow:/*.bmp$
例11.仅禁止Baiduspider抓取jpg格式图片。
User-agent:Baiduspider
Disallow:/*.jpg$