正在阅读:

robots.txt写法

5,266

robots.txt一般指robots协议,Robots协议(也称为爬虫协议、机器人协议等)的全称是“网络爬虫排除标准”(Robots Exclusion Protocol),网站通过Robots协议告诉搜索引擎哪些页面可以抓取,哪些页面不能抓取。

大家有没有想过,如果我们某个站点不让百度收录,该怎样做呢?

搜索引擎已经和我们达成一个约定,如果我们按约定那样做了,它们就不会收录。

这个写约定的的文件命名为:robots.txt。

robots.txt是一个最简单的.txt文件,用以告诉搜索引擎哪些网页可以收录,哪些不允许收录。

关于robots.txt的使用一般站长需要注意以下几点:

如果你的站点对所有搜索引擎公开,则不用做这个文件或者robots.txt为空就行。

必须命名为:robots.txt,都是小写,robot后面加"s"。

robots.txt必须放置在一个站点的根目录下。放在子目录的 Robots.txt 文件搜索引擎不能爬取到,所以不会起任何作用。如:通过
http://jiangwenseo.com/robots.txt 可以成功访问到,(当然本站暂时没有设置robots.txt文件,以后肯定会设置的)则说明本站的放置正确。

举例说明:

http://jiangwenseo.com/robots.txt 有效

http://jiangwenseo.com/share/robots.txt 无效

如果你不能控制根目录的 robots.txt,则你可以通过在子目录网页中使用标签阻止网页被收录。

文件写法:

一般情况下,robots.txt里只写着两个函数:User-agent和 Disallow。

观察这个页面并修改为自己的:http://jiangwenseo.com/robots.txt

有几个禁止,就得有几个Disallow函数,并分行描述。

至少要有一个Disallow函数,如果都允许收录,则写: Disallow: ,如果都不允许收录,则写 : Disallow: / (注:只是差一个斜杆)。

指令列举:

User-agent: * 星号说明允许所有搜索引擎收录

Disallow: /admin/ 这里定义是禁止爬寻admin目录下面的目录

Disallow: /require/ 这里定义是禁止爬寻require目录下面的目录

Disallow: /ABC/ 这里定义是禁止爬寻ABC目录下面的目录

Disallow: /cgi-bin/*.htm 禁止访问/cgi-bin/目录下的所有以".htm"为后缀的URL(包含子目录)。

Disallow: /*?* 禁止访问网站中所有包含问号 (?) 的网址

Disallow: /.jpg$ 禁止抓取网页所有的.jpg格式的图片

Disallow:/ab/adc.html 禁止爬取ab文件夹下面的adc.html文件。

Allow: /cgi-bin/ 这里定义是允许爬寻cgi-bin目录下面的目录

Allow: /tmp 这里定义是允许爬寻tmp的整个目录

Allow: .htm$ 仅允许访问以".htm"为后缀的URL。

Allow: .gif$ 允许抓取网页和gif格式图片

Sitemap: 网站地图 告诉爬虫这个页面是网站地图

举例说明:

Disallow: /1.html 说明 http://jiangwenseo.com/1.html 这个页面禁止搜索引擎抓取。

Disallow: /index.php? 说明类似这样的页面http://jiangwenseo.com/index.php?s ... &searchcategory=%25 禁止搜索引擎抓取。

总结:

spider在访问一个网站时,会首先会检查该网站的根域下是否有一个叫做 robots.txt的纯文本文件,这个文件用于指定spider在您网站上的抓取范围。

上一节[ 5.4 ]如何查看网站被百度抓取的情况?

下一节[ 5.6 ]为什么要设置robots.txt文件?