搜索引擎的工作原理(搜索引擎的执行步骤有哪些)

图片[1]-搜索引擎的工作原理(搜索引擎的执行步骤有哪些)-圆梦2021

在互联网时代,搜索引擎可以说是日常生活的一部分。不仅如此,搜索引擎历经20多年的风霜雨雪,仍然牢牢占据着流量入口,不得不让人感叹。

而且,提起搜索引擎,我们都会想到一家高大上的巨无霸公司和一家被黑出xiang的巨霸公司。足以见得搜索引擎的巨大作用。

图片[2]-搜索引擎的工作原理(搜索引擎的执行步骤有哪些)-圆梦2021

图片[3]-搜索引擎的工作原理(搜索引擎的执行步骤有哪些)-圆梦2021

作为产品人,对此当然不能视而不见,也应该了解了解其工作原理

搜索引擎工作原理大致可以分为3个步骤

1. 爬行与抓取

2. 预处理

3. 排序

所谓一图胜千言,没图我说个……

图片[4]-搜索引擎的工作原理(搜索引擎的执行步骤有哪些)-圆梦2021

PS:上图总结自《SEO实战密码》。

下面详细叙述:

 

爬行与抓取

简单地说:就是搜索引擎蜘蛛沿着互联网络爬行并抓取其爬行的页面,将这些抓取的页面存储起来。

说到这,你可能会问:为什么叫「蜘蛛」?

为了抓取尽量多的页面,搜索引擎会跟踪页面上的链接,从一个页面爬行到下一个页面,好像蜘蛛在蜘蛛网上爬行那样,这就是搜索引擎蜘蛛这个名称的由来。

搜索引擎在跟踪网络上的链接时,会使用一定策略,因为现在的网络链接太多。最简单的爬行遍历策略有两种,一种是深度优先,一种是广度优先。

还有一点值得一提:搜索引擎访问网站页面时类似于普通用户使用的浏览器。搜索引擎蜘蛛抓取的数据存入原始页面数据库,其中的页面数据与用户浏览器得到的HTML完全一样。

 

预处理

由于抓取的页面数量太大(以”亿”为单位),无法快速实时排序,所以需要预处理。这就是产品设计中的「复杂性守恒原则」,我们没办法让用户等待十几秒甚至更久,就只能在后台处理上下功夫。

图片[5]-搜索引擎的工作原理(搜索引擎的执行步骤有哪些)-圆梦2021

在一些资料中,「预处理」也被称为「索引」,因为「索引」是预处理最主要的内容。

预处理的过程比较复杂,值得一提的有这么几点:

去重:对于内容相似度高的,搜索引擎不喜欢,因为用户不喜欢这样的内容。而且,搜索引擎的去重算法很可能不止于页面级别,而是进行到段落级别。因此,混合不同文章、交叉调换段落顺序也不能使转载和抄袭变成原创。所以,少抄袭,多原创吧。正向索引:可以简称为「索引」。通过这个步骤,搜索引擎将页面及关键词形成词表结构存储进索引库。简化的索引词表形式如下。你看,这样就得到了每个文件(如每个页面)的对应关键词。这样用户就能搜索了吗?还不行。

图片[6]-搜索引擎的工作原理(搜索引擎的执行步骤有哪些)-圆梦2021

倒排索引:正向索引虽然提供了文件与关键词的对应关系,但无奈用户搜索的是关键词,因此搜索引擎还需根据这些对应关系找到某关键词对应的文件,这样的计算量无法满足实时返回排名结果的要求。因此,还需要倒排索引。倒排索引与正向索引刚好相反,它以关键词为关键,简单来说如下表:

图片[7]-搜索引擎的工作原理(搜索引擎的执行步骤有哪些)-圆梦2021

得到了倒排索引,就能很快地根据用户搜索的关键词找到对应文件,但这样就够了吗?别天真啊。

通过上述步骤,其实只得到了页面本身的内容。说白了,就是页面本身告诉搜索引擎自己如何如何。

俗话说:王婆卖瓜,自卖自夸。

就像我们网购时不仅会看店家给的商品介绍,还会看看买家的评论一样,页面内容质量,也需要其他人的评价——这里的「其他人」指「其他页面。」所以,我们还需要链接关系计算。

链接关系计算:每个页面上都有链接,不同页面之间用链接互相关联起来,这些关联关系,就形成了其他页面对某个页面的评价。这些复杂的链接指向关系形成了网站和页面的链接权重。

 

排名

发现没有:排名,是用户是用户唯一能感觉到的步骤,爬行与抓取、预处理,都在后台完成。正因如此,用户才会感到用起来十分快捷。

排名的过程也比较复杂,其中值得一提的有如下几点:

搜索词处理:说白了,就是处理用户输入的关键词。这一步对用户来说更为关键,因为搜索引擎还不够智能,需要我们去学习一些高级指令,以获得更为精准的内容。

但由于每个关键词对应的文件数量都可能是巨大的(如几亿个),处理如此庞大的数据量,无法满足用户对「快」的需求。同时,用户并不需要所有内容,他们往往只查看前几页内容,甚至很多用户只查看第一页的前几条内容。因此,选择一定数量的内容进行处理,很有必要。这就涉及到选择初识子集。

但如何选择呢?这是一个问题。

选择初识子集:选择出示子集,关键在于「权重」。所以说权重有多重要,即使页面做得好,但权重不高,连做备胎的机会都没有。相关性计算:这是排名过程中最重要的一步,最终搜索结果页面的排名基本按照相关性从高到低排序。

但到此就结束了吗?还没有哦。

排名过滤及调整:为了保证用户搜索结果更符合用户需求,搜索引擎需要过滤掉那些处心积虑钻空子的页面,在这一步,搜索引擎会找出这些页面并施加惩罚。典型的例子是百度的11位。所以,过度优化有风险。查询及点击日志:通过这一步,搜索引擎记录了用户的一些数据,从而为后续的优化提供依据。这和产品日常工作中的数据埋点有些相似。

搜索引擎的工作流程,总的来说主要分为四个模块:

图片[8]-搜索引擎的工作原理(搜索引擎的执行步骤有哪些)-圆梦2021

 

一、抓取模块

1、 蜘蛛的定义

搜索引擎为了抓取互联网中的各种页面,必须有一个24小时自动抓取页面的程序,我们称这个程序为“蜘蛛”,在互联网中也被称之为“机器人”。

百度的抓取程序我们一般称为百度蜘蛛,常见的有Baiduspider、Baiduspider-mobile(抓取wap)Baiduspider-image(抓取图片)Baiduspider-video(抓取视频)Baiduspider-news(抓取新闻)。

谷歌的抓取程序我们一般称为谷歌机器人,常见的有Googlebot、Googlebot-Mobile(抓取wap)。

360的抓取程序我们一般称为360蜘蛛,常见的只有一个:360Spider。

蜘蛛访问任何一个站点的时候都会访问网站根目录中的robots.txt文件,这个文件限制的搜索引擎蜘蛛的抓取范围,所有的蜘蛛都必须遵守这个文件中的协议.另外我们可以从一些站点中的robots.txt文件中查看搜索引擎蜘蛛的最新名称。

2、如何吸引蜘蛛来抓取网站中的页面

(1)权重越高、蜘蛛来得越频繁;

(2)更新越快,蜘蛛来得越频繁;

(3)导入链接越多,蜘蛛来得越频繁;

(4)与首页点击距离越小,蜘蛛收录得更快;

网站建立初期,搜索引擎有可能是不知道咱们站点的,我们需要通过以下两个方面来告诉搜索引擎:

(1)通过百度站长平台提交网站链接;

(2)外部链接:我们可以在一些已经被收录的站点中放置我们自己的站点链接以此来吸引蜘蛛访问,可以发布软文也可以交换友情链接。

二、过滤模块

由于互联网中存在大量的垃圾页面、复制内容页面和无内容页面,这些页面大大浪费了搜索引擎的服务器资源,对用户来说也是无用的,所有搜索引擎为了避免这些垃圾页面占用自己的资源,同时也为了更好的用户体验,搜索引擎需要将蜘蛛抓取回来的这些页面进行过滤.

搜索引擎在后台通过提取文字、中文分词、去停止词、去重等方法过滤掉垃圾页面。其中的去重大家尤为留意一下,同一篇文章重复出现在不同的站点中或者同一个站点的不同网址中,搜索引擎是非常讨厌这样内容页面的,甚至会被认为是垃圾页面。

三、收录模块

凡是被搜索引擎认为有价值、对用户有用的页面,搜索引擎会将其存储到索引数据中,我们称之为收录模块。只有被搜索引擎存储到索引数据库中的网址才有可能参与排名。

那么如何查看一个页面是否被收录呢?

如图所示,最常见的办法将页面的网址(URL)放到百度搜索框中,如果出现了该页面的搜索结果,那么就证明该页面已经被百度收录了(其他搜索引擎同理)。

图片[9]-搜索引擎的工作原理(搜索引擎的执行步骤有哪些)-圆梦2021

图中的网址仅作案例讲解

四、排序模块

对存入搜索引擎索引库的页面,通过正排索引、倒排索引以及各种算法之后得到每一个页面的排名分数,根据所得分数将其进行排序,这就是我们看到的最终排序结果。

© 版权声明
THE END
喜欢就支持一下吧
点赞87 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片