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