机器人txt文件中的花括号

时间:2019-03-06 05:00:48

标签: web-scraping robots.txt

我一直在进行网络抓取,并在一个robots.txt文件中遇到了以下模式。

Disallow: /*{{url}}*
Disallow: /*{{imageURL}}*

这是否意味着我不允许我删除任何URL?

1 个答案:

答案 0 :(得分:0)

这似乎是网站作者犯了一个错误,因为{{url}}{{imageURL}}可能是应该用实际值替换的变量。

根据原始robots.txt规范解释此记录时,必须按字面意义解释所有字符,因此不允许使用此类URL:

  • https://example.com/*{{url}}*
  • https://example.com/*{{url}}*.bar
  • https://example.com/*{{url}}*/
  • https://example.com/*{{url}}*/foo

由于不允许{}出现在URL路径(list of allowed characters)中,这意味着允许对所有URL进行爬网。但是,如果您愿意,可以假定它适用于{ / }的百分比编码形式,但这不是规范所要求的。

在根据robots.txt规范的常用扩展名(例如as used by Google Search)解释此记录时,*具有特殊含义:{{1}中的每个* }值不能替换为任何字符或任何字符序列。这将导致出现更多不允许使用的URL,但它们仍必须包含字面意义上的Disallow{{url}}