什么是网络爬虫/蜘蛛以及它是如何工作的?

像谷歌这样的搜索引擎是使互联网如此强大的一部分。只需按几下键并单击一个按钮,就会出现与您的问题最相关的答案。但是你有没有想过搜索引擎是如何工作的?网络爬虫是答案的一部分。

那么,什么是网络爬虫,它是如何工作的?

什么是网络爬虫?

当您在搜索引擎中搜索某些内容时,该引擎必须快速扫描数百万(或数十亿)个网页以显示最相关的结果。网络爬虫(也称为蜘蛛或搜索引擎机器人)是一种自动化程序,可以“爬行”互联网并以易于访问的方式编译有关网页的信息。

“爬行”一词是指网络爬虫遍历互联网的方式。网络爬虫也被称为“蜘蛛”。这个名字来自它们爬网的方式——就像蜘蛛在蜘蛛网上爬行一样。

网络爬虫评估和编译尽可能多的网页上的数据。他们这样做是为了使数据易于访问和搜索,因此它们对搜索引擎如此重要。

将网络爬虫想象成编辑本书末尾索引的编辑器。索引的作用是告知读者每个关键主题或短语出现在书中的哪个位置。同样,网络爬虫会创建一个索引,搜索引擎可以使用该索引快速查找有关搜索查询的相关信息。

什么是搜索索引?

正如我们所提到的,搜索索引类似于在书的后面编译索引。在某种程度上,搜索索引就像创建互联网的简化地图。当有人向搜索引擎提出问题时,搜索引擎会通过他们的索引运行它,最相关的页面会首先出现。

但是,搜索引擎如何知道哪些页面是相关的?

搜索索引主要关注两件事:页面上的文本和页面的元数据。文本是您作为读者看到的所有内容,而元数据是页面创建者输入的有关该页面的信息,称为“元标记”。元标记包括出现在搜索结果中的页面描述和元标题等内容。

像谷歌这样的搜索引擎会将网页上的所有文本编入索引(在某些情况下,某些单词如“the”和“a”除外)。然后,当一个词被搜索到搜索引擎中时,它会迅速搜索其索引以找到最相关的页面。

网络爬虫如何工作?

顾名思义,网络爬虫的工作原理。它们从已知的网页或 URL 开始,并为该 URL 的每个页面编制索引(大多数情况下,网站所有者请求搜索引擎抓取特定的 URL)。当他们遇到这些页面上的超链接时,他们会编制一个“待办事项”列表,列出接下来要爬行的页面。网络爬虫将无限期地继续执行此操作,遵循有关抓取哪些页面以及忽略哪些页面的特定规则。

网络爬虫不会抓取互联网上的每个页面。事实上,据估计,只有 40-70% 的互联网被搜索索引(仍然有数十亿页)。许多网络爬虫旨在专注于被认为更“权威”的页面。权威页面符合一些标准,使它们更有可能包含高质量或流行的信息。网络爬虫还需要在更新、删除或移动页面时始终如一地重新访问页面。

控制网络爬虫将抓取哪些页面的最后一个因素是 robots.txt 协议或机器人排除协议。网页的服务器将托管一个 robots.txt 文件,该文件为访问该网页的任何网络爬虫或其他程序制定规则。该文件将排除特定页面被抓取以及抓取工具可以跟踪的链接。 robots.txt 文件的目的之一是限制机器人给网站服务器带来的压力。

为了防止网络爬虫访问您网站上的某些页面,您可以通过robots.txt 文件添加“禁止”标签或将noindex元标签添加到相关页面。

爬行和抓取有什么区别?

网页抓取是使用机器人在未经该网站许可的情况下从该网站下载数据。通常,出于恶意原因使用网络抓取。网页抓取通常从特定网站获取所有 HTML 代码,更高级的抓取工具也会获取 CSS 和 JavaScript 元素。网络抓取工具可用于快速、轻松地编译有关特定主题的信息(例如产品列表),但也可能进入灰色和非法领域

另一方面,网络爬虫是在获得许可的情况下对网站上的信息进行索引,以便它们可以轻松地出现在搜索引擎中。

网络爬虫示例

每个主要的搜索引擎都有一个或多个网络爬虫。例如:

  • 谷歌有 Googlebot
  • Bing 有 Bingbot
  • DuckDuckGo 有 DuckDuckBot。

较大的搜索引擎(如 Google)具有针对不同重点的特定机器人,包括 Googlebot 图片、Googlebot 视频和 AdsBot。

网络爬虫如何影响搜索引擎优化?

如果您希望您的页面出现在搜索引擎结果中,则该页面必须可供网络爬虫访问。根据您的网站服务器,您可能希望分配特定的抓取频率、抓取工具要扫描的页面以及它们可以对您的服务器施加多大压力。

基本上,您希望网络爬虫在充满内容的页面上磨练,而不是在感谢消息、管理页面和内部搜索结果等页面上。

信息触手可及

使用搜索引擎已成为我们大多数人的第二天性,但我们大多数人不知道它们是如何工作的。网络爬虫是有效搜索引擎的主要组成部分之一,每天有效索引数百万个重要网站的信息。它们是网站所有者、访问者和搜索引擎等的宝贵工具。