SEO 百科

抓取器总览

本页目录

抓取工具是一个通用称呼,泛指自动发现和扫描网站的任何程序,也叫漫游器或者蜘蛛[3]。它不是指某一个程序,而是一整类。Google 把这些客户端分成三类,各自的规则并不一样[1][3]。

三类客户端

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

也就是说,判断某个请求该不该遵守 robots.txt,要先弄清它属于哪一类。

运行方式

这些客户端可以在数千台计算机上同时运行,以提高性能,并随着网络规模的扩大而扩大作用范围[3]。这些客户端分布在各地的数据中心,以便靠近可能访问的网站,所以网站的日志里会出现来自多个 IP 地址的访问[3]。

请求主要来自美国境内的 IP 地址。如果检测到某个网站屏蔽了来自美国的请求,抓取工具可能会改从其他国家或地区的 IP 地址抓取[3]。

协议与压缩

抓取工具同时支持 HTTP/1.1 和 HTTP/2,会选能带来最佳抓取性能的那个版本,默认是 HTTP/1.1[3]。这里有一句值得记住:通过 HTTP/2 抓取能节省计算资源,但不会带来任何产品上的好处,比如不会提升排名[3]。

在压缩方面,支持 gzip、deflate 和 Brotli 三种编码方式,每个用户代理会在请求的 Accept-Encoding 标头里说明自己支持哪些[3]。比如 Accept-Encoding: gzip, deflate,就表示这个用户代理支持这两种。

文件大小与抓取速度

大小有上限。默认情况下,抓取工具只会取文件的前 15MB,超出的部分会被忽略;但不同项目、不同文件类型的限制可能不同,比如 Googlebot 的限制可能更小[3]。

速度则是有意放慢的。官方说,目标是每次访问都尽可能多地抓取网页,同时不过多占用服务器的带宽[3]。所以网站跟不上请求频率时,可以主动让抓取变慢[3]。

缓存与条件请求

抓取基础架构还支持 HTTP 缓存标准里的启发式缓存,靠 ETag 和 Last-Modified 这类标头实现[3]。也就是说,网站只要正确给出这些标头,就能避免重复传输那些没有变化的内容。

这两个标头写在响应头里,抓取工具下次就能用它们做核对:

HTTP/1.1 200 OK
Content-Type: text/html; charset=utf-8
ETag: "a1b2c3d4"
Last-Modified: Wed, 01 Oct 2025 08:00:00 GMT

附录

参见

参考资料

官方(境外)

  1. 《Overview of Bing crawlers (user agents)》,Bing 网站管理员工具。
  2. 《About AmazonBot》,Amazon 开发者。
  3. 《Google 抓取工具和抓取器(用户代理)概览》,Google 搜索中心。

外部链接

无。