2024 年 12 月 3 日,星期二
您可能听说过,Google 搜索需要完成一些工作,才能在 Google 搜索结果中显示某个网页。其中一个步骤称为“抓取”。Google 搜索上的抓取工作是由 Googlebot 完成的。Googlebot 是 Google 服务器上运行的一款程序,用于检索网址,并处理在遍历整个网络时可能遇到的网络错误、重定向和其他小问题。但是,有些细节并不常被提及。在本月的每周,我们都会探讨这些细节的一部分,因为这些细节可能会对您网站的被抓取方式产生重大影响。
稍微回顾一下:什么是抓取?
抓取是指发现新网页和重新访问更新后的网页并下载网页的过程。简而言之,Googlebot 会获取网址,向托管该网址的服务器发出 HTTP 请求,然后处理来自该服务器的响应(可能会跟随重定向、处理错误),并将网页内容传递给 Google 的索引编制系统。
但现代网页并非纯 HTML,那么构成网页的其他资源呢? 抓取这些资源会对“抓取预算”产生什么影响?这些资源是否可以在 Google 端缓存?未曾抓取过的网址与已编入索引的网址之间是否存在差异?在这篇博文中,我们将解答这些问题并探讨更多内容!
Googlebot 和抓取网页资源
除了 HTML 之外,现代网站还会结合使用 JavaScript 和 CSS 等不同技术,为用户提供逼真体验和实用功能。当用户使用浏览器访问此类网页时,浏览器会先下载父级网址,其中托管着开始为用户构建网页所需的数据,即网页的 HTML。此类初始数据可能包含对 JavaScript 和 CSS 等资源的引用,也可能包含浏览器将再次下载的图片和视频,以终于构建向用户呈现的最终网页。
Google 也会执行完全相同的操作,但方式略有不同:
- Googlebot 从父网址(网页的 HTML)下载初始数据。
- Googlebot 将提取的数据传递给网页渲染服务 (WRS)。
- WRS 使用 Googlebot 下载原始数据中引用的资源。
- WRS 像用户的浏览器一样,使用所有下载的资源构建网页。
与浏览器相比,由于调度限制(例如托管渲染网页所需资源的服务器的被感知负载),每个步骤之间的时间间隔可能会明显更长。这时,抓取预算就有了用武之地。
抓取渲染网页所需的资源会消耗托管资源的主机名的抓取预算。为了改善这种情况,WRS 会尝试缓存其渲染的网页中引用的所有资源(JavaScript 和 CSS)。WRS 缓存的存留时长不受 HTTP 缓存指令影响;实际上,WRS 会将所有内容缓存长达 30 天,这有助于为其他抓取任务保留网站的抓取预算。
从网站所有者的角度来看,管理抓取资源的方式和抓取的资源可能会影响网站的抓取预算;我们建议:
- 尽可能少用资源,为用户提供出色的体验;渲染网页所需的资源越少,渲染过程中使用的抓取预算就越少。
- 慎用缓存无效化参数:如果资源的网址发生更改,Google 可能需要重新抓取这些资源,即使它们的内容未更改。这当然会消耗抓取预算。
- 在与主网站不同的主机名上托管资源,例如,通过使用 CDN 或仅在其他子网域上托管资源。这会将抓取预算问题转移到提供资源的主机。
所有这些要点也适用于媒体资源。如果 Googlebot(更具体地说,是 Googlebot-Image
和 Googlebot-Video
)抓取这些网页,则会消耗网站的抓取预算。
您可能会忍不住也想将 robots.txt 添加到列表中,但从渲染角度来看,禁止抓取资源通常会导致问题。如果 WRS 无法提取对渲染至关重要的资源,Google 搜索便可能无法提取网页内容,也无法让网页在 Google 搜索中排名靠前。
什么是 Googlebot 抓取?
若要分析 Google 正在抓取哪些资源,最佳来源是网站的原始访问日志,其中包含浏览器和抓取工具请求的每个网址的条目。为便于在访问日志中识别 Google 的抓取工具,我们在开发者文档中发布了 IP 范围。
次最佳来源当然是 Search Console“抓取统计信息”报告,其中会按抓取工具细分每种资源:

最后,如果您对抓取和渲染非常感兴趣,并想与他人讨论相关问题,请访问搜索中心社区,您也可在 LinkedIn 上找到我们。
进行了几项更新
- 2024 年 12 月 6 日更新:指出了从其他源提供资源的性能影响。
想详细了解抓取?请查看整个“抓取 12 月”系列:
井上坚二
Google 搜索团队 查看 Kenji Inoue 在 Google 搜索中心博客上发布的博文。
Aaseesh Marina
产品支持经理 Aaseesh Marina 是 Google 的 Search Console 产品支持经理。他专注于帮助网站所有者获取所需支持,提高其网站在 Google 搜索中的曝光率。 他曾是 Google 搜索质量团队的一员,该团队负责评估 Google 搜索结果的质量,并保护用户免受网络垃圾和其他类型的滥用行为的影响。 请查看他在 Google 搜索中心博客上发布的博文。 Twitter
Adrian Gregory Lui
新闻合作伙伴关系经理 查看 Adrian Gregory Lui 在 Google 搜索中心博客上发布的博文。 LinkedIn
Adriana Porter Felt
Chrome 安全团队 在 Google 搜索中心博客上查看 Adriana Porter Felt 发布的博文。
Alan Kent
开发技术推广工程师 在 Google 搜索中心博客上查看 Alan Kent 发布的帖子。 Twitter
Aldrich Christopher
政策透明度 查看 Aldrich Christopher 在 Google 搜索中心博客上发布的博文。 Twitter | LinkedIn | YouTube
Alissa Roberts
搜索质量团队前成员 查看 Alissa Roberts 在 Google 搜索中心博客上发布的博文。 LinkedIn
Amir Rachum
Search Console 软件工程师 查看 Amir Rachum 在 Google 搜索中心博客上发布的博文。 网站
Andrei Pascovici
网站站长工具团队 查看 Andrei Pascovici 在 Google 搜索中心博客上发布的博文。
Anna Ogawa
高级搜索生态系统顾问 查看 Anna Ogawa 在 Google 搜索中心博客上发布的博文。 Twitter | LinkedIn
Asaph Arnon
软件工程师经理 查看 Asaph Arnon 在 Google 搜索中心博客上发布的博文。 LinkedIn
Aurora Morales
信任与安全 Aurora 在 Google 信任与安全团队工作。多年来,她一直致力于向业界传授产品政策和准则,协助相关人员为各种受众群体打造更安全的生态系统。 一些让她忙不停的项目:管理英语和西班牙语的搜索中心帮助社区;向发布商受众群体介绍 Google 的创收政策和限制;吸引关键意见领袖关注虚假信息等风险和滥用领域。 网站 | LinkedIn | X/Twitter Aurora 还与搜索中心团队合作开展了多个 多媒体项目 ,例如 YouTube 系列视频 Sustainable
Candice Denic
产品经理 查看 Candice Denic 在 Google 搜索中心博客上发布的帖子。 LinkedIn
Chris Nelson
搜索质量团队 查看 Chris Nelson 在 Google 搜索中心博客上发布的博文。 LinkedIn
Cory Benavente
视频搜索产品经理 查看 Cory Benavente 在 Google 搜索中心博客上发布的博文。 LinkedIn
Daniel Yosef
软件工程师 在 Google 搜索中心博客上查看 Daniel Yosef 发布的帖子。 LinkedIn
Danielle Marshak
视频搜索产品经理 查看 Danielle Marshak 在 Google 搜索中心博客上发布的博文。 LinkedIn
Danny Sullivan
Google 搜索公共联络员 查看 Danny Sullivan 在 Google 搜索中心博客上发布的博文。 Mastodon
Duy Nguyen
搜索质量分析师 查看 Duy Nguyen 在 Google 搜索中心博客上发布的博文。
Earl J. Wagner
软件工程师 查看 Earl J. Wagner 在 Google 搜索中心博客上发布的博文。 LinkedIn
Edu Pereda
Google 搜索开源团队 查看 Edu Pereda 在 Google 搜索中心博客上发布的博文。 LinkedIn | GitHub | Mastodon | Twitter
Eiji Kitamura
Chrome 开发技术推广工程师 在 Google 搜索中心博客上查看 Eiji Kitamura 发布的帖子。 网站 | Twitter | GitHub | Mastodon | LinkedIn
Eric Silva
产品经理 查看 Eric Silva 在 Google 搜索中心博客上发布的博文。 LinkedIn
Fan Zhang
软件工程师 查看 Fan Zhang 在 Google 搜索中心博客上发布的博文。
Giacomo Gnecchi Ruscone
信任与安全合作伙伴关系 Giacomo 当前致力于在解决儿童安全、虚假信息和金融欺诈等关键现实问题方面展开合作关系,打造更安全的 Google 服务,并希望使互联网环境更加安全。查看 Giacomo Gnecchi Ruscone 在 Google 搜索中心博客上发布的博文。 Twitter
Greg Grothaus
搜索质量团队资深软件工程师 查看 Greg Grothaus 在 Google 搜索中心博客上发布的博文。 网站
Ian Hung 洪翊恩
搜索生态顾问 在 Google 搜索中心博客上查看 Ian Hung 洪翊恩发布的帖子。 LinkedIn
Irina Tuduce
软件工程师 查看 Irina Tuduce 在 Google 搜索中心博客上发布的博文。 LinkedIn
Jennifer Granito
新闻质量团队的统筹产品经理 Jennifer Granito 是 Google 新闻质量团队的组合产品经理。她目前是 Google 搜索、Google 新闻应用以及 Google 其他服务的新闻质量和可信度方面的产品主管。她致力于让用户获取高质量的新闻内容,帮助所有人了解世界。 此前,她曾在 Google 收购的初创公司 Kifi 工作,主要负责将知识性的内容提供给用户,帮助他们更好地了解、利用和拓展原有的知识。除了 Kifi,她还曾供职于
Jeremy Weinstein
Google 网站站长 查看 Jeremy Weinstein 在 Google 搜索中心博客上发布的博文。 LinkedIn