是否可以通过robots.txt控制抓取速度?

Goo*_*bot 11 search-engine robots.txt google-crawlers

我们可以告诉机器人抓取或不抓取在robot.txt中抓取我们的网站.另一方面,我们可以控制Google网站管理员的抓取速度(Google机器人抓取网站的程度).我想知道是否可以通过robots.txt限制抓取工具的活动

我的意思是接受机器人抓取页面,但限制他们的存在时间或页面或大小!

Zur*_*Web 12

你可以在robots.txt中使用一个指令,它是"Crawl-delay".

Crawl-delay: 5

意思是机器人应该每5秒爬行不超过一页.但据我所知,robots.txt并未正式支持此指令.

还有一些机器人根本没有真正接受统计robots.txt文件.因此,即使您不允许访问某些网页,它们仍然可能被某些机器人抓取,当然不是像Google这样最大的机器人.

例如,百度可以忽略robots.txt,但这不是肯定的.

我没有这个信息的官方来源,所以你可以只谷歌它.

  • 有关`Crawl-Delay`的更多信息,请参阅此SO问题:http://stackoverflow.com/questions/17377835/robots-txt-what-is-the-proper-format-for-a-crawl-delay-for-multiple-用户代理 (2认同)
  • Crawl-delay 不是标准的一部分,但一些机器人尊重它:https://en.wikipedia.org/wiki/Robots_exclusion_standard#Crawl-delay_directive (2认同)
  • @Goose是正确的,大多数爬虫都尊重“爬行延迟”;Google 的抓取工具非常好(真的,就是那么好),它会自动确定最佳抓取速度,因此在他们的情况下不需要此设置。例如,如果没有此指令,必应每月会访问小型网站数百万次。我们已经在客户面前多次看到过这种情况。 (2认同)

Gib*_*ron 5

不是我发现的。Robots.txt 是放置您希望机器人包含或排除的目录或文件的位置。如果有办法的话,它还不是标准的。请记住,创建机器人的人可以选择是否尊重 robots.txt,但并非所有机器人都尊重此文件。

目前,如果有降低抓取速度、网站停留时间等的设置,它将以逐个机器人为基础,并且不会标准化为 robots.txt 值。

更多信息:http://www.robotstxt.org/robotstxt.html