本文是Vercel和MERJ通过实际测试揭开 Google 渲染的真实情况;翻译自 Vercel 的 Blog 文章《How Google handles JavaScript throughout the indexing process》。注:Vercel 是 Next.js 的前端云平台;MERJ 是数据驱动的营销公司。 了解搜索引擎如何抓取、渲染和索引网页是网站 SEO 的重要基础。然而,随着 Google 等搜索引擎的技术不断变化,尤其是涉及客户端 JavaScript,掌握有效的优化方法变得更加困难。 也有许多过时的观点仍然存在,导致大家对应用 SEO 的最佳实践感到困惑: 为了验证这些观点,Vercel 与数据工程咨询公司 MERJ 合作,进行了关于 Google 抓取行为的实验,分析了超过 100,000 次 Googlebot 抓取,涵盖了各种类型的网站,以测试并验证 Googlebot 处理 JavaScript 的能力。 我们先回顾 Google 渲染技术的发展历程,然后探讨我们的研究发现及其对现代 Web 应用程序的实际影响。 多年来,Google 在抓取和索引网页内容的能力上发生了显著变化,了解这一演变对于掌握现代 Web 应用的 SEO 现状至关重要。 在搜索引擎早期,Google 主要索引静态 HTML 内容。由 JavaScript 生成的内容在很大程度上对搜索引擎不可见,因此静态 HTML 被广泛应用于 SEO 。 Google 推出了 AJAX 动态渲染,允许网站提供动态生成内容的 HTML 快照。这是一种权宜之计,需要开发者为页面创建单独的可抓取版本(针对爬虫使用服务器端渲染 SSR,针对用户采用客户端渲染 CSR)。 (我之前也写过一篇 JavaScript SEO 的内容,当时主要推荐这种方法,现在已经又升级了) Google 开始使用没有头部的 Chrome 渲染页面,这是一次重要进步,然而这一早期浏览器版本在处理现在的 JavaScript 功能上仍存在局限性。 如今,Google 使用最新版本的 Chrome 进行渲染,与最新的 Web 技术保持同步。关键功能有: 今天,Google 的索引过程看起来是这样的: 先简单说下研究方法,我们分析了 2024 年 4 月期间从多个网站收集的数据,研究了 Googlebot 如何渲染网站。 通过特殊工具跟踪爬虫行为,我们确认了哪些页面被成功渲染、渲染所需时间,以及不同内容的处理方法。本次研究涉及 37,000 多个页面,为验证相关说法提供了可靠的数据支持。 这一误解让许多开发者避免使用 JavaScript 框架,或者采用复杂的解决方案来适配 SEO。 为验证 Google 渲染 JavaScript 内容的能力,我们重点测试了以下方面: 我们发现,在分析超过 10 万次 Googlebot 抓取后(排除错误和不可索引页面),所有 HTML 页面均被成功完整渲染,包括具有复杂 JavaScript 交互的页面。 我们通过以下方法测试了 Google 是否会对 JavaScript 密集型页面进行不同处理: 一些人认为 JavaScript 密集型页面由于渲染队列的存在会导致索引延迟。为验证这一点,我们研究了 Google 渲染页面的时间延迟和模式。 另外发现 URL 参数和更新频率也会影响渲染速度: 有人认为 JavaScript 为主的网站会让 Google 更慢发现页面,我们的研究对此提出了新见解。 本次研究揭示了 Google 对大量使用 JavaScript 网站的处理方式,打破了一些常见误解,并提供了以下关键结论和建议: 保持 sitemap.xml 更新可以大大缩短或消除不同渲染方式之间的页面发现时间差异。 Google 的渲染通常不会失败。如果发生失败,往往是因为资源被 robots.txt 阻止或特定的特殊情况导致的。 尽管渲染方式可能存在细微差异,但无论使用哪种策略,Google 都会快速发现和索引你的网站。与其过度担心 Google 的渲染过程,不如专注于提升网页性能,为用户提供更好的体验。 页面速度仍是一个排名因素,Google 会通过核心网页指标 (Core Web Vitals) 评估网站性能。同时,加载速度更快也能提升用户体验,每节省 100 毫秒的加载时间,网站转化率可能提升 8%。更少的用户跳出页面,也会让 Google 认为页面更相关。性能影响叠加,毫秒决定成败。 * 原文链接《How Google handles JavaScript throughout the indexing process》https://vercel.com/blog/how-google-handles-javascript-throughout-the-indexing-process * 《将动态渲染作为临时解决方法》https://developers.google.com/search/docs/crawling-indexing/javascript/dynamic-rendering?hl=zh-cn
Google 渲染功能的演变
2009 年之前:JavaScript 支持有限
2009-2015:AJAX 动态渲染方案
2015-2018:早期 JavaScript 渲染
2018年至今:现代渲染能力
研究方法
误解 1:“Google 无法渲染客户端 JavaScript”
测试情况
测试结论
误解 2: “Google 对待 JavaScript 页面有不同的处理方式”
测试情况
测试结论
误解 3 :“渲染队列和时间对 SEO 的影响显著”
测试情况
测试结论
误解 4: “以 JavaScript 为主的网站页面抓取速度较慢”
测试情况
测试结论
sitemap.xml
能大大缩短不同渲染方式之间的页面发现时间差异。
总体影响和建议
主要结论
建议
<a href="...">
),而非 JS 导航。<lastmod>
标签提示 Google 最新内容。
不同渲染策略的优缺点
参考链接
文章为作者独立观点,不代表DLZ123立场。如有侵权,请联系我们。( 版权为作者所有,如需转载,请联系作者 )
网站运营至今,离不开小伙伴们的支持。 为了给小伙伴们提供一个互相交流的平台和资源的对接,特地开通了独立站交流群。
群里有不少运营大神,不时会分享一些运营技巧,更有一些资源收藏爱好者不时分享一些优质的学习资料。
现在可以扫码进群,备注【加群】。 ( 群完全免费,不广告不卖课!)
发表评论 取消回复