Robots.txt写法规则

内容项的基本格式:键: 值对。

1、 User-Agent键

后面的内容对应的是各个具体的搜索引擎爬行器的名称。如百度是Baiduspider,谷歌是Googlebot。

一般我们这样写:

User-Agent: *

表示允许所有搜索引擎蜘蛛来爬行抓取。如果只想让某一个搜索引擎蜘蛛来爬行,在后面列出名字即可。如果是多个,则重复写。

注意:User-Agent:后面要有一个空格。

在robots.txt中,键后面加:号,后面必有一个空格,和值相区分开。

2、”*”和”$”的使用:

Baiduspider支持使用通配符”*”和”$”来模糊匹配url。”$” 匹配行结束符。”*” 匹配0或多个任意字符。例如:Disallow: /*.jpg   网站所有的jpg文件被禁止了。Disallow: /.php$   网站所有以.php结尾的文件被禁止。

4、Disallow键的使用:

Disallow: 描述不需要被索引的网址或者是目录。比如Disallow:/wp-不允许抓取url中带wp-的网址;要注意的是Disallow: /date/与Disallow: /date是不一样的;前者仅仅是不允许抓取date目录下的网址,如果data目录下还有子文件夹,那么子目录是允许抓取的,后者可以屏蔽date目录下所有文件,包括其子文件夹。

5、Allow键的使用

Allow:描述不需要被索引的网址或者是目录。例如:Allow: /index.php 允许网站的index.php。功能跟disallow相反,特别注意的是Disallow与Allow行的顺序是有意义的,robot会根据第一个匹配成功的Allow或Disallow行确定是否访问某个URL。

 

robots.txt实例分析

例1. 禁止所有搜索引擎访问网站的任何部分

    User-agent: *

    Disallow: /

例2. 允许所有的搜索引擎访问网站的任何部分

      User-agent: *

  Disallow:

例3. 仅禁止Baiduspider访问您的网站

  User-agent: Baiduspider

  Disallow: /

例4. 仅允许Baiduspider访问您的网站

  User-agent: Baiduspider

  Disallow:

例5. 禁止spider访问特定目录

  User-agent: *

  Disallow: /cgi-bin/

  Disallow: /tmp/

  Disallow: /data/

注意事项:1)三个目录要分别写。2)请注意最后要带斜杠。3)带斜杠与不带斜杠的区别。

例6. 允许访问特定目录中的部分url

我希望a目录下只有b.htm允许访问,怎么写?

  User-agent: *

  Allow: /a/b.htm

  Disallow: /a/

注:允许收录优先级要高于禁止收录。

从例7开始说明通配符的使用。通配符包括("$" 结束符; "*"任意符)

例7. 禁止访问网站中所有的动态页面

  User-agent: *

  Disallow: /*?*

例8. 禁止搜索引擎抓取网站上所有图片

  User-agent: *

  Disallow: /*.jpg$

  Disallow: /*.jpeg$

  Disallow: /*.gif$

  Disallow: /*.png$

  Disallow: /*.bmp$

部分来自http://www.idsem.com