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

问题描述 投票:0回答:4

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

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

search-engine robots.txt google-crawlers
4个回答
21
投票

您可以在 robots.txt 中使用一个指令,它是“抓取延迟”。

Crawl-delay: 5

这意味着机器人每 5 秒爬行的页面数不应超过一页。 但据我所知,该指令并未得到 robots.txt 的正式支持。

还有一些机器人根本不真正接收 count robots.txt 文件。 因此,即使您禁止访问某些页面,它们仍然可能会被一些机器人抓取,当然不是像 Google 这样最大的机器人。

例如,百度可以忽略robots.txt,但这并不确定。

我没有这个信息的官方来源,所以你可以谷歌一下。


5
投票

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

目前,如果有降低抓取速度、网站停留时间等的设置,它将基于机器人,而不是标准化为 robots.txt 值。

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


4
投票

我知道这是一个非常老的问题,但我想补充一点,根据谷歌文档,这里是官方答案:

您通常可以在 Google 中调整抓取速度设置 站长工具帐户。

每:https://developers.google.com/webmasters/control-crawl-index/docs/faq#h04

在网站管理员工具中,您可以按照以下步骤操作:

  1. 在 Search Console 主页上,单击所需的网站。

  2. 单击齿轮图标 ,然后单击站点设置。

  3. 在抓取速率部分中,选择所需的选项,然后根据需要限制抓取速率。

新的抓取速度有效期为 90 天。

参考:谷歌支持问题


0
投票

不可以,

robots.txt
文件只能指定您不希望将哪些页面编入索引以及这些规则也适用于哪些用户代理。您无法对该文件执行任何其他操作。

一些网站使用

Allow
Sitemap
指令,但根据官方网站,它们似乎不是有效的指令,即使某些爬虫可能会尊重它们。

© www.soinside.com 2019 - 2024. All rights reserved.