我对网站感到好奇,并希望在/s
路径上进行网页抓取。 Its robots.txt:
User-Agent: *
Allow: /$
Allow: /debug/
Allow: /qa/
Allow: /wiki/
Allow: /cgi-bin/loginpage
Disallow: /
我的问题是:
在这种情况下,美元符号意味着什么?
抓取网址/s
是否合适?关于robots.txt文件?
答案 0 :(得分:5)
如果您遵循original robots.txt specification,$
没有特殊含义,并且没有定义Allow
字段。符合标准的机器人必须忽略它不知道的字段,因此这样的机器人实际上会看到此记录:
User-Agent: *
Disallow: /
然而,原始的robots.txt规范已被各方扩展。但由于robots.txt的作者没有针对特定机器人,我们不知道哪个"扩展"他们想到了。
通常是(但不是必然,因为它没有正式指定),Allow
会覆盖Disallow
和{{1}中指定的规则}表示URL路径的结尾。
遵循此解释(例如,used by Google),$
意味着:您可以抓取Allow: /$
,但您可能无法抓取/
,{{1 }} 等等。
因此,不允许抓取路径以/a
开头的网址(既不是原始规范,也不是/b
,也不是Google的扩展名。)