美元符号在robots.txt中的含义
问题描述:
我对一个网站感到好奇,并且想要在/s
路径上执行一些网络爬行。 Its robots.txt:美元符号在robots.txt中的含义
User-Agent: *
Allow: /$
Allow: /debug/
Allow: /qa/
Allow: /wiki/
Allow: /cgi-bin/loginpage
Disallow:/
我的问题是:
什么是美元符号在这种情况下,是什么意思?
是否适合抓取URL
/s
?关于robots.txt文件?
答
如果按照original robots.txt specification,$
没有特殊的意义,而没有定义Allow
场。一个符合机器人必须忽略它不知道的字段,因此这样的机器人实际上看到这个记录:
User-Agent: *
Disallow:/
然而,最初的robots.txt规范已经延长了各方。但是,由于相关robots.txt的作者没有针对特定的机器人,我们不知道他们想到哪个“扩展”。
通常(但不是必然,因为它没有正式规定),Allow
改写成Disallow
指定的规则,并$
代表URL路径的末尾。
按照这种解释(这是,例如,used by Google),Allow: /$
将意味着:你可以爬/
,但你可能不爬/a
,/b
等。
因此,不允许抓取其路径以/s
开头的网址(根据原始规范,这要归功于Disallow: /
,也不符合Google的扩展程序)。