什么是 robots.txt?
robots.txt是一个协议,是搜索引擎访问网站时第一个要查看的文件,它存在的目的是告诉搜索引擎哪些页面能被抓取,哪些页面不能被抓取。
当 spider 访问一个站点时,会首先检查该站点根目录下是否存在 robots.txt,如果存在,spider 会按照文件中的内容来确定访问的范围;如果该文件不存在,所有的 spider 将能够访问网站上所有没有被口令保护的页面。
robots.txt 具体介绍及用法
1、User-agent 用于描述搜索引擎 robot 的名字
在 robots.txt 文件中,如果有多条 User-agent 记录说明有多个 robot 会受到 robots.txt 的限制,对该文件来说,至少要有一条 User-agent 记录。如果该项的值设为*,则对任何 robot 均有效,在 robots.txt 文件中,User-agent:*这样的记录只能有一条。
360 搜索支持 user-agent 命令,包括使用通配符的 user-agent 命令。
2、Disallow 命令指定不建议收录的文件、目录
Disallow 值可以是一条完整的路径,也可以是路径的非空前缀,以 Disallow 项的值开头的 URL 不会被 robot 访问。
3、Allow 命令指定建议收录的文件、目录
Allow 值用于描述希望被访问的一组 URL,它的值也可以是一条完整的路径,也可以是路径的前缀,以 Allow 项的值开头的 URL 是允许 robot 访问的。
4、Sitemap 命令指定站点地图文件路径
Sitemap 值是站点地图的一条完整的 URL 路径地址,告诉爬虫这是一条网站点图路径。
5、举例说明
- User-agent: * 这里的*代表所有的搜索引擎种类,*是一个通配符,*也可以替换成其他的蜘蛛名称,例如:Googlebot、yisouspider,表示屏蔽特定搜索引擎的蜘蛛
- Disallow: /admin/ 这里定义是禁止爬寻 admin 目录下面的目录
- 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: 网站地图,告诉爬虫这个页面是网站地图
robots.txt 注意事项
1、robots 文件往往放置于根目录下;
2、当您的网站包含有不希望被搜索引擎收录的内容时,才需要使用 robots.txt 文件;
3、360 搜索会对#这样形式的 robots 进行全匹配 url 处理,所以在写 robots 的时候一定要小心,最好写尽量精确的 url 通配,不建议做泛匹配
User-agent: * Disallow: *#*
或者
User-agent: * Disallow: #
360 搜索会把#认为是全部匹配,从而不抓取全部的 url,并且会将线上收录的链接做下线处理!!因此我们不建议站长写入这样的规则!
类似的,如写成:Disallow: #.html,则会不抓取所有以 html 为后缀的 url
robots.txt 常见问题
Robots 相关的常见问题主要是因错误书写 robots 导致的网站不被 360 搜索引擎收录。所以建议站长,当网站出现不收录时,首先检查一下 robtos 文件是否正确。
Robots 协议是一个搜索引擎和网站之间的善意协议,我们鼓励站长们也能善意使用这一协议,除非有充足合理的理由,否则我们一般都不建议使用 Robots 协议屏蔽 360 搜索及其他搜索引擎的蜘蛛。
其他任何不清楚的,还可以访问 360 的robots 百科词条:或参考360 搜索针对 robots 的 FAQ:
答案来自@360 社区-浣溪沙
如若转载,请注明出处:https://www.ozabc.com/jianzhan/233168.html