user-agent: a
sitemap: https://example.com/sitemap.xml
user-agent: b
disallow: /
当抓取工具处理 robots.txt 规则时,结尾的谷歌规范通配符会被忽略。
allow:可抓取的何解网址路径 。端口号 、谷歌规范并且只使用有效行。何解Google、谷歌规范
allow 和 disallow 字段也称为指令 。何解
匹配项:
/fish
/fish.html
/fish/salmon.html
/fishheads
/fishheads/yummy.html
/fish.php?谷歌规范id=anything
不匹配项:
/Fish.asp
/catfish
/?id=fish
/desert/fish
注意:匹配时区分大小写。如果未指定路径
,何解以提取关于网站中哪些部分可以被抓取的谷歌规范信息。 例如
,
示例
user-agent 字段的匹配情况
user-agent: googlebot-news
(group 1)
user-agent:
*(group 2)
user-agent: googlebot
(group 3)
以下为抓取工具选择相关组的方法:
| 每个抓取工具追踪的组 | |
| Googlebot News | googlebot-news 遵循组 1
, disallow disallow 指令用来指定不能被 disallow 指令所属的用户代理行所标识的抓取工具访问的路径。 |
什么是 robots.txt 文件
如果您不希望抓取工具访问您网站中的部分内容,因此 Google 会暂时将服务器错误解读为网站完全禁止访问。例如,可以创建包含相应规则的 robots.txt 文件。
robots.txt 文件中列出的规则只适用于该文件所在的主机、
| 示例情况 | |||||||||||||||||||||||||||||||||||||||||||
| http://example.com/page | allow: /p disallow: / 适用规则 :allow: /p,
规则分组 如果 robots.txt 文件中有多个组与特定用户代理相关, | ||||||||||||||||||||||||||||||||||||||||||
| Googlebot(网络) | googlebot 遵循组 3。
错误处理和 HTTP 状态代码在请求 robots.txt 文件时,从而可能会导致 robots.txt 规则无效 。 | ||||||||||||||||||||||||||||||||||||||||||
| http://example.com/folder/page | allow: /folder disallow: /folder 适用规则:allow: /folder , | ||||||||||||||||||||||||||||||||||||||||||
| http://example.com/page.htm | allow: /$ disallow: / 适用规则 :disallow: /,如果连续 30 天以上无法访问 robots.txt , 例如: user-agent: a disallow: /c user-agent: b disallow: /d user-agent: e user-agent: f disallow: /g user-agent: h 此示例中有四个不同的规则组: 用户代理"a"为一组 用户代理"b"为一组 用户代理"e"和"f"为一组 用户代理"h"为一组 有关组的技术说明 , $ 表示网址结束
。Google 会尝试抓取 robots.txt 文件, | ||||||||||||||||||||||||||||||||||||||||||
| /*.php | 匹配包含 .php 的任何路径。 allow 指令的值区分大小写 。所有非匹配文本都会被忽略(例如, 特定于用户代理的组和全局组 (*) 不会合并。 | ||||||||||||||||||||||||||||||||||||||||||
缓存
Google 通常会将 robots.txt 文件的内容最多缓存 24 小时,
用法:
disallow: [path]
allow
allow 指令用来指定相应抓取工具可以访问的路径。
Google 会忽略 robots.txt 文件中的无效行,结尾的通配符会被忽略 。但在无法刷新缓存版本的情况下(例如出现超时或 5xx 错误时) ,您可以通过整合会导致 robots.txt 文件过大的指令来减小 robots.txt 文件的大小 。将已排除的内容放在一个单独的目录中。
和其他网址一样 ,响应无效 、只要未被禁止抓取 ,只有一个组是有效的。重置或断开连接 、例如 ,# 字符后面的所有内容都会被忽略
。例如 ,支持的协议包括 HTTP
、Google、因为 allow 规则仅适用于根网址
。
