一、什么是 robots ?
robots是站点与spider沟通的重要渠道,站点通过robots文件声明该网站中不想被搜索引擎收录的部分或者指定搜索引擎只收录特定的部分。
二、robots 格式定义
User-agent:用于描述搜索引擎robot的名字。
Disallow:用于描述不希望被访问的一组URL,这个值可以是一条完整的路径,也可以是路径的非空前缀。
Allow:用于描述希望被访问的一组URL,与Disallow项相似,这个值可以是一条完整的路径,也可以是路径的前缀。
三、特殊通配符
"*" 匹配0或多个任意字符
"$" 匹配行结束符。
"?" 匹配动态路径
四、使用方法
在本地建立一个 robots.txt 文本文件,把需要设置的 robot 协议写进文本中,然后再把此 robots.txt 文本文件上传至网站空间根目录下。
五、常用设置蛛蛛
百度蜘蛛:Baiduspider
谷歌机器人: Googlebot
360好搜: 360spider
SOSO蜘蛛:Sosospider
有道蜘蛛:YoudaoBot
必应蜘蛛:bingbot
六、robots的用法举例
1.屏蔽所有搜索引擎
User-agent: *
Disallow: /
注意:英文冒号后面紧接着必须是一个英文格式的“空格”。
2.屏蔽百度蛛蛛,允许其它蛛蛛
User-agent: Baiduspider
Disallow: /
User-agent: *
3.屏蔽一个文件夹
User-agent: *
Disallow: /data/
4.屏蔽一个文件夹,但允许访问此文件夹中的某个文件
User-agent: *
Disallow: /data/
Allow: /data/abc.php
5.屏蔽文件夹时后面带 "/" 与不带 "/" 的区别
例如 "Disallow:/data" 是禁止robot访问/data.html、/dataxxx.html、/data/xxx.html,
而 "Disallow:/data/"则禁止robot访问/data/xxx.html、/data/xxx/ ,而允许访问/data.html、/dataxxx.html文件。
PS:Allow 是一样的道理。
6.屏蔽动态路径
User-agent: *
Disallow: /*?*
7.指定蛛蛛爬取路径以 .html 结尾,后面所有路径都不再抓取
User-agent: *
Disallow: /*.html$
8.分别定义百度蛛蛛,和谷歌蛛蛛
User-agent: Baiduspider
Disallow: /data/
User-agent: Googlebot
Disallow: /template/
如我网站的 robots 协议: