关于 Amazonbot
Amazonbot 是亚马逊的网络爬虫,用于改善我们的服务,例如使Alexa能够回答更多客户的问题。Amazonbot 遵循标准的 robots.txt 规则。
如何识别Amazonbot?
在用户代理字符串中,您会看到“Amazonbot”以及其他附加代理信息。一个示例看起来像这样:
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_1) AppleWebKit/600.2.5 (KHTML\, like Gecko) Version/8.0.2 Safari/600.2.5 (Amazonbot/0.1; +https://developer.amazon.com/support/amazonbot)
如何控制Amazonbot在您的网站上爬取什么?
Robots.txt:Amazonbot 尊重 robots.txt 中的 user-agent 和 Disallow 指令。在下面的示例中,Amazonbot 不会爬取位于 /do-not-crawl/ 或 /not-allowed 下的文档:
User-agent: Amazonbot # Amazon的用户代理
Disallow: /do-not-crawl/ # 不允许爬取此目录
User-agent: * # 任何机器人
Disallow: /not-allowed/ # 不允许爬取此目录
AmazonBot 不支持 robots.txt 中的 crawl-delay 指令,也不支持 HTML 页面上的 robots 元标记,如“nofollow”和“noindex”。
链接级 Rel 参数:Amazonbot 支持链接级的 rel=nofollow 指令。在您的 HTML 中包含这些,以阻止 Amazonbot 跟踪和爬取您网站上的特定链接,格式如下:
<a href="signin.php" rel=nofollow>Sign in </a>
验证Amazonbot通过使用DNS查找来验证访问您服务器的爬虫是否是官方的Amazonbot爬虫,可以帮助您识别其他可能访问您站点并声称是Amazonbot的机器人或恶意代理。
您可以使用命令行工具按照以下步骤验证Amazonbot:
从服务器日志中找到访问IP地址
使用host命令对IP地址运行反向DNS查找
验证检索到的域名是crawl.amazonbot.amazon的子域名
使用host命令对检索到的域名运行正向DNS查找
验证返回的IP地址与服务器日志中的原始IP地址相同
例如:
$ host 12.34.56.789
789.56.34.12.in-addr.arpa domain name pointer 12-34-56-789.crawl.amazonbot.amazon.
$ host 12-34-56-789.crawl.amazonbot.amazon
12-34-56-789.crawl.amazonbot.amazon has address 12.34.56.789
如果你觉得以上方法比较麻烦,可以直接通过爬虫识别网站,输入 Amazonbot 的 IP 地址,即可判断是否是真正的 Amazonbot 爬虫。