Google 抓取工具和抓取器(用户代理)概览

Google 使用抓取工具和抓取器针对其产品执行自动或用户请求的操作。 “抓取工具”(有时也称为“漫游器”或“蜘蛛”程序)是一个通用术语,泛指通过跟踪从一个网页指向另一个网页的链接自动发现并扫描网站的任何程序。抓取工具充当程序(如 wget),通常代表用户发出单个请求。Google 客户端分为三类:

常见抓取工具 用于 Google 产品的常见抓取工具(例如 Googlebot)。它们始终会遵循自动抓取的 robots.txt 规则。
特殊情况下的抓取工具 特殊爬虫与常见爬虫类似,但由特定产品使用,并且被抓取的网站与 Google 产品之间会就抓取过程达成协议。例如,AdsBot 会在广告发布商许可的情况下忽略全局 robots.txt 用户代理 (*)。
用户触发的抓取器 用户触发的抓取工具是最终用户触发抓取操作的工具和产品功能。例如,Google 网站验证工具会响应用户请求。

Google 抓取工具和抓取器的技术特性

Google 的抓取工具和抓取器可在数千台计算机上同时运行,以提高性能并随着网络规模的扩大而扩展其作用范围。为了优化带宽使用情况,这些客户端会分布在全球各地的许多数据中心,以便位于它们可能会访问的网站附近。因此,您的日志可能会显示来自多个 IP 地址的访问。Google 主要会从美国境内的 IP 地址发出请求。如果 Google 检测到某个网站屏蔽了来自美国的请求,则可能会尝试从位于其他国家/地区的 IP 地址进行抓取。

Google 的抓取工具和抓取器使用 HTTP/1.1,如果相应网站支持,还能通过 HTTP/2 抓取内容。通过 HTTP/2 抓取可以为网站和 Googlebot 节省计算资源(例如 CPU、RAM),但不会为网站带来任何产品专属优势(例如,不会在 Google 搜索中提升排名)。 如需禁止通过 HTTP/2 抓取,请对托管您网站的服务器做出以下指示:当 Google 尝试通过 HTTP/2 访问您的网站时,返回 421 HTTP 状态代码。如果这种方法不可行,您可以向抓取团队发送消息(但这只是临时解决方案)。

Google 的抓取工具和抓取器支持以下内容编码(压缩)方式:gzipdeflateBrotli (br)。每个 Google 用户代理支持的内容编码都会在其发出的每个请求的 Accept-Encoding 标头中进行通告。例如:Accept-Encoding: gzip, deflate, br

我们的目标是,每次访问您的网站时都尽可能多地抓取网页,但不会过多地占用服务器的带宽。如果您的网站跟不上 Google 的抓取请求频率,您可以减慢抓取速度。 请注意,向 Google 抓取工具发送不适当的 HTTP 响应代码可能会影响您的网站在 Google 产品中的呈现效果。

验证 Google 抓取工具和抓取器

Google 抓取工具会通过以下三种方式表明自己的身份:

  1. HTTP user-agent 请求标头。
  2. 请求的源 IP 地址。
  3. 源 IP 的反向 DNS 主机名。

了解如何使用这些详细信息验证 Google 抓取工具和抓取器