什么是网络爬虫?
为了使你的网站出现在搜索结果中,Google(以及其他搜索引擎,如 Bing、Yandex、百度、Naver、雅虎或 DuckDuckGo)使用网络爬虫来浏览网站,以发现网站及其网页。
不同的搜索引擎在每个国家/地区拥有不同的 市场份额 。
在本指南中,我们介绍了 Google,它是大多数国家/地区最大的搜索引擎。也就是说,你可能需要检查其他搜索引擎及其指南,尤其是在你的目标客户位于 中国、俄罗斯、日本或韩国。
虽然在排名和渲染方面存在一些差异,但大多数搜索引擎在爬取和索引方面的工作方式非常相似。
网络爬虫是一种模拟用户并通过网站上找到的链接进行导航以索引页面的机器人。网络爬虫使用自定义的 用户代理来识别自己。Google 有几个网络爬虫,但最常使用的爬虫是**Googlebot 桌面版**和**Googlebot 手机版**。
Googlebot 如何工作?
该过程的总体概述如下
- **查找 URL**:Google 从许多地方获取 URL,包括Google Search Console、网站之间的链接或XML 网站地图。
- **添加到爬取队列**:这些 URL 会添加到爬取队列中,供 Googlebot 处理。爬取队列中的 URL 通常会在那里停留几秒钟,但根据具体情况,最多可能需要几天时间,尤其是在需要渲染、索引或(如果 URL 已经过索引)刷新页面时。然后,页面将进入渲染队列。
- **HTTP 请求**:爬虫发出 HTTP 请求以获取标头并根据返回的状态代码进行操作
200
- 它会爬取并解析 HTML。30X
- 它会遵循重定向。40X
- 它会记录错误,并且不会加载 HTML50X
- 它可能会稍后返回以检查状态代码是否已更改。
- **渲染队列**:搜索系统的不同服务和组件会处理 HTML 并解析内容。如果页面包含一些基于客户端的 JavaScript 内容,则 URL 可能会添加到渲染队列中。渲染队列对 Google 的成本更高,因为它需要使用更多资源来渲染 JavaScript,因此渲染的 URL 占互联网上所有页面的比例较小。一些其他搜索引擎可能没有与 Google 相同的渲染能力,这就是 Next.js 可以帮助你制定渲染策略的地方。
- **准备被索引**:如果满足所有条件,页面可能有资格被索引并在搜索结果中显示。
在接下来的几个部分中,我们将深入探讨搜索系统流程的每个主要组件 爬取和索引以及 渲染和排名.