×

SEO Google 蜘蛛

深入解析Google蜘蛛的抓取机制

元智汇电子 元智汇电子 发表于2024-01-20 16:27:47 浏览125 评论0

抢沙发发表评论

首先,Google蜘蛛追寻着新页面的踪迹。然后,Google对这些页面进行索引,以深入了解其内容,并根据检索到的数据对它们进行排名。尽管爬行和索引是两个独立的过程,但它们都由蜘蛛执行。


什么是蜘蛛?

蜘蛛(也称搜索机器人)是谷歌和其他搜索引擎用于扫描网页的软件。简单来说,它们在网页之间"爬行",寻找那些尚未被谷歌收录或修改的内容。

任何搜索引擎都拥有自己的蜘蛛。对于谷歌而言,存在超过15种不同类型的蜘蛛,其中主要的被称为Googlebot。Googlebot同时执行爬行和索引,下面我们将详细探讨它的工作原理。


蜘蛛的运作方式是怎样的?

在这个过程中,不存在URL的中央注册表,每当有新页面被创建,它都会被更新。这意味着谷歌不会自动地"知道"这些页面存在,而必须主动在网络上搜索发现。Googlebot不断地游走在互联网上,寻找新页面,并将它们添加到谷歌现有页面的数据库中。

一旦Googlebot找到新页面,它会在浏览器中呈现(可视化)页面,加载所有的HTML、第三方代码、JavaScript和CSS。这些信息将被存储在搜索引擎的数据库中,用于索引和排名页面。如果一个页面已经被索引,它将被添加到谷歌索引——这是一个庞大的数据库。

image.png


爬行器如何浏览页面?

爬行器在最新版本的Google浏览器中呈现页面。在理想的情况下,爬行器会以您设计和构建页面的方式"展示"页面。然而,在实际情况下,事情可能更加复杂。


移动和桌面渲染

Googlebot能够通过两个子类型的爬行器来"看到"您的页面,即桌面Googlebot和智能手机Googlebot。这两者都是必需的,以便进行桌面和移动SERP索引。

几年前,谷歌主要使用桌面爬行器访问和渲染大多数页面。然而,随着移动优先概念的引入,情况发生了变化。随着谷歌认为世界越来越适应移动设备,他们开始使用智能手机Googlebot来抓取、索引和排名移动和桌面SERP网站的移动版本。

然而,实施移动先发制人的索引结果却比预期更为困难。由于大多数网站对移动设备的优化不足,谷歌决定使用移动第一的概念来抓取、索引新网站和那些未完全优化为移动的老网站。如果一个网站不具备移动友好性,那么它将由桌面Googlebot先行抓取和渲染。

即使您的网站已经进行了移动先发制人的索引,Googlebot桌面仍然会抓取一些页面,因为谷歌希望检查您的网站在桌面上的表现。虽然谷歌没有直接说明,但假设这是合理的,因为谷歌的首要目标是向用户提供最有用的信息。谷歌几乎不会因为盲目地遵循移动第一的概念而失去这些信息。

请注意:在任何情况下,您的网站都将被移动Googlebot和桌面Googlebot访问。因此,关注您网站的两个版本,并考虑使用响应式布局是非常重要的,如果您尚未这样做。

如何确认谷歌是否以移动第一的概念抓取和索引您的网站? 您将在谷歌搜索控制台收到相应通知。

image.png


HTML和JavaScript的渲染问题

在处理和渲染庞大的代码时,Googlebot可能会遇到一些问题。如果您的页面代码混乱不堪,爬虫可能无法正确呈现页面,并将其考虑为空白页面。

对于JavaScript渲染而言,需要注意的是,JavaScript是一门快速发展的语言,Googlebot有时可能不支持其最新版本。确保您的JavaScript与Googlebot兼容,以避免页面呈现错误。

此外,需要注意JavaScript的加载时间。如果脚本加载时间超过5秒,Googlebot将无法渲染和索引由该脚本生成的内容。

重要提示:如果您的网站充斥着大量的JavaScript元素,而您又无法将其删除,谷歌建议使用服务器侧渲染(server-side rendering)。这将提高您网站的加载速度,并防止JavaScript错误的发生。

若要查看页面上可能导致渲染问题的资源,并实际了解是否存在问题,请登录Google Search Console帐户。在URL检查中,输入要检查的URL,点击测试实时URL按钮,然后点击"View Tested Page"。

image.png

接着,前往"More Info"部分,点击页面资源和JavaScript控制台消息文件夹,查看Googlebot未能呈现的资源列表。

image.png

现在,您可以向网站管理员展示问题列表,并要求他们调查和修复这些错误。


影响爬行者行为的因素

Googlebot的行为并非混乱无章——它是由复杂的算法决定的,这些算法旨在协助爬行者浏览网络并设定信息处理规则。然而,尽管算法的行为并非完全可控,但我们可以采取措施来优化页面的爬行。


内部链接和反向链接

如果Google已经了解您的网站存在,Googlebot会定期检查您的主页以查看是否有更新。因此,将指向新页面的链接放在网站的权威页面上变得至关重要,最好是在主页上。您可以通过在主页上添加一个块,展示最新的新闻或博客文章,即使您有独立的新闻页面和博客,来帮助Googlebot更快地发现您的新页面。尽管这个建议可能显而易见,但仍然有很多网站所有者忽视它,导致索引不佳和排名下降。

在爬行的层面上,反向链接也起到相同的作用。因此,如果您添加了新页面,请不要忘记进行外部推广。您可以尝试客户发帖、展开广告活动或尝试其他方式,以确保Googlebot能够查看新页面的URL。

注意:链接应该是遵循的,以便Googlebot能够跟随它们。虽然谷歌最近表示,无法跟随链接也可以作为爬行和索引的提示,但我们仍然建议使用dofollow,以确保爬行者确实看到页面。


点击深度

点击深度显示页面距离主页有多远。理想情况下,网站的任何页面都应在3次点击内可达。较大的点击深度会减慢爬行速度,并且几乎对用户体验没有好处。

您可以使用Web网站审核员工具检查您的网站是否与点击深度有关。启动该工具,然后导航到站点结构>页面,并关注点击深度列。

image.png

如果您发现一些重要页面离主页太远,请重新考虑网站结构的安排。良好的结构应该是简单和可扩展的,以便您可以添加尽可能多的新页面,而不会对简单性产生负面影响。

image.png


网站地图的重要性

网站地图是一个包含您希望在Google中被索引的页面完整列表的文档。通过在Google搜索控制台中导航到索引>网站地图,您可以向Google提交网站地图,以便通知Googlebot应该访问和爬行哪些页面。同时,网站地图还告知Google,如果有任何在您的网页上的更新。

注意:尽管网站地图不能保证Googlebot在爬行您的网站时会始终使用它,爬行者有可能选择忽略您的网站地图,按照其独立的方式爬行网站。然而,大多数情况下,网站地图被证明是有帮助的,而且没有因为使用网站地图而受到惩罚。一些内容管理系统(CMS)甚至可以自动生成网站地图,并在更新时将其发送到Google,从而使您的SEO过程更为迅速、轻松。如果您的网站是新的或包含大量页面(超过500个网址),强烈建议考虑提交网站地图。


索引规则解析

在Google进行页面爬行和索引时,遵循一些规则和指令,包括Robots.txt、Noindex标签、robots元标签和X-Robots标签。

Robots.txt 是一个位于根目录的文件,用于限制某些页面或内容元素不被Google爬取。一旦Googlebot发现您的页面,它会检查Robots.txt文件。如果发现页面受到Robots.txt的限制,Googlebot将停止爬取该页面,并且不会加载其中的任何内容和脚本。这将导致页面在搜索结果中不可见。

Noindex标签、robots元标签和X-Robots标签 是用于限制爬行和索引页面的标签。Noindex标签限制所有类型的爬行器对页面进行索引。使用robots元标签来指定如何爬行和索引特定页面。这意味着您可以阻止某些类型的爬行器访问页面,同时保持页面对其他爬行器的开放。X-Robots标签可作为HTTP标头响应的一部分,用于限制页面的索引或影响爬行者在页面上的行为。此标签允许您为特定类型的爬行机器人(如果指定)提供说明。如果没有指定机器人类型,这些说明将适用于所有类型的爬行器。

注意:Robots.txt文件并不能保证页面被排除在索引之外。Googlebot将此文档视为建议而非命令。这意味着谷歌有可能忽略Robots.txt并索引一个页面进行搜索。如果您确保页面不被索引,请使用Noindex标签。


是否所有页面都可供爬行?

并非如此。一些页面可能不适用于爬行和索引。我们将仔细研究这些页面类型:

受密码保护的页面: Googlebot模拟匿名用户的行为,这种用户没有任何凭证来访问受密码保护的页面。因此,受密码保护的页面不会被爬行,因为Googlebot无法访问它。

受索引说明排除的页面: 这些页面可能受到Robots.txt、Noindex标签、robots元标签和X-Robots标签的排除。这些指令告诉爬行器不要索引特定页面。

孤儿页面: 孤儿页面是在整个网站中没有被其他页面链接的页面。Googlebot通过跟踪链接来发现新页面,如果没有指向页面的链接,该页面将不会被爬行,也不会在搜索中显示。

一些页面被故意限制不可爬行和索引。这些通常是不打算在搜索结果中显示的页面,如具有个人数据、策略、使用条款、页面测试版本、存档页面、内部搜索结果页面等。

提示: 如果您希望页面可供爬行且能够吸引流量,请确保不对公共页面进行密码保护,有着良好的链接结构(内部和外部链接),并仔细检查索引说明。

要检查网站页面的可爬行性,可前往Google搜索控制台中的Index > Coverage 报告。注意查看标记为"Error"(未索引)和"Valid with warning"(索引,但存在问题)的内容。

image.png

注意: 如果您希望Googlebot不查找或更新某些页面(例如一些旧页面或您不再需要的页面),请将它们从站点地图中移除,设置状态为404 Not Found,或使用Noindex标签标记这些页面。


网站何时会在搜索中显示?

明显的是,在建立完您的网站后,您的网页不会立即在搜索结果中显示。如果您的网站是全新的,Googlebot需要一些时间才能在网络上发现它。请注意,在某些情况下,这个"一些时间"可能长达六个月。

如果Google已经知道您的网站,并且您进行了一些更新或添加了新页面,那么您的网站在网络中的变化速度将取决于抓取预算。

抓取预算 是Google在爬行您的网站时分配的资源量。Googlebot需要的资源越多,搜索速度就越慢。

抓取预算的分配取决于以下因素:

  1. 网站受欢迎程度: 网站越受欢迎,Google愿意为其分配更多的爬行资源。

  2. 更新频率: 如果您频繁更新页面,您的网站将获得更多的爬行资源。

  3. 页面数量: 网站上的页面越多,爬行预算就越大。

  4. 处理爬行的服务器容量: 托管服务器必须能够及时响应爬行器的请求。

需要注意的是,爬行预算并不是均匀分配给每个页面的,因为某些页面可能消耗更多的资源(可能因为JavaScript和CSS太重,或者因为HTML混乱不堪)。因此,分配的爬行预算可能无法快速爬行所有页面,就像您预期的那样。

除了严重的代码问题外,导致不良爬行和非理性爬行预算支出的一些常见原因包括重复内容问题和URL结构不良。


解决重复内容问题

重复内容是指多个页面的内容大致相似。这可能是由于多种原因引起的:

  1. 不同的页面访问方式: 使用www或没有www,通过http或https等。

  2. 动态URL: 许多不同的URL导致相同的页面。

  3. A/B测试的不同页面版本。

如果不进行修复,重复内容问题会导致Googlebot多次爬行相同的页面,因为它会将它们视为不同的页面。这浪费了爬行资源,可能使Googlebot难以发现您网站上的其他有意义的页面。此外,重复内容可能会降低页面在搜索中的排名,因为Google可能认为您的网站整体质量较低。

在大多数情况下,难以避免引起重复内容的诸多因素。然而,您可以通过设置规范的URL来预防重复内容问题。规范标签指定哪个页面应被视为"主"页面,因此指向同一内容的其他URL将不会被索引,从而避免内容重复。此外,您还可以通过robots.txt文件限制爬行机器人访问动态URL。


优化网址结构以提升搜索友好性

搜索引擎和用户都欣赏用户友好的URL结构,而Googlebot也不例外。Googlebot在处理过长和参数复杂的URL时可能感到困惑,这会导致更多的爬行资源被消耗。为了避免这种情况,建议使您的URL更加用户友好。

确保您的URL清晰、按照逻辑结构组织,包含适当的标点符号,并且不包含复杂的参数。一个良好的URL示例如下:

http://example.com/vegetables/cucumbers/pickles

然而,需要注意的是,如果您拥有大型(超过100万个页面)或中型(超过10,000个页面)的网站,并且其内容经常变化(每天或每周),则需要更关注这一点。对于其他情况,只需正确优化您的网站以提高搜索性能,并定期解决索引问题即可。


总结:

Google的主要爬行者Googlebot在复杂的算法下运作,但您仍然可以通过调整网址结构来引导其行为,以更有利于您的网站。此外,大多数优化步骤与标准SEO步骤相似,确保您的网站在搜索中表现良好。

群贤毕至

访客