hwyzw 发表于 2024-11-16 21:35:35

搜索引擎工作原理及作用:如何帮助用户找到所需内容

    1.什么是搜索引擎?

    搜索引擎是一种帮助用户搜索所需内容的计算机程序。换句话说,搜索引擎将计算机中存储的信息与用户的信息需求进行匹配,并显示匹配结果。

    例如:如果您想购买并了解“”的配置或价格,则在浏览器搜索框中输入“”,然后单击搜索按钮。这里的关键字“”就是您的信息需求。在浏览器显示搜索结果的零点几秒内,其程序根据关键词在庞大的数据库中进行搜索,最终计算出所有关于“”的网页。

    2. 搜索引擎如何工作

    搜索引擎网站后台会有一个非常大的数据库,里面存储了大量的关键词,每个关键词对应着很多个URL。这些 URL 被称为“搜索引擎蜘蛛”或“网络爬虫”。这些程序是从浩瀚的互联网上一点一点下载和收集的。随着各种网站的出现,这些勤劳的“蜘蛛”每天都在互联网上爬行,从一个链接到另一个链接,下载内容,分析提炼,找到关键词。如果“蜘蛛”认为数据库中没有但对用户有用的关键词就存储在后台数据库中。相反,如果“蜘蛛”认为是垃圾邮件或重复信息,它就会丢弃它,继续爬行,寻找最新的、有用的信息并保存起来供用户搜索。当用户搜索时,可以检索与该关键字相关的URL并将其显示给访问者。

    一个关键词匹配多个URL,因此存在排名问题。相应地,与关键字最匹配的URL将被排在第一位。在“蜘蛛”抓取网页内容、提炼关键词的过程中,存在一个问题:“蜘蛛”能否理解。如果网站的内容是flash、js等,那么就无法理解,会很混乱。即使关键词合适,也是没有用的。相应地,如果网站内容能够被搜索引擎认可,那么搜索引擎就会增加网站的权重,增加网站的友好度。我们称这个过程为SEO。

    3.搜索引擎工作流程(三个阶段)

    搜索引擎的工作过程大致可以分为三个阶段。

    【阶段一】爬行和抓取:搜索引擎蜘蛛通过链接访问网页,获取网页的HTML代码并存储在数据库中。

    1. 什么是()?

    爬取网页数据时称为执行器。事实上,它是一个计算机程序。由于这个工作过程与现实中的蜘蛛非常相似,所以业界称其为搜索引擎蜘蛛!蜘蛛程序向网站页面发送访问请求,服务器将返回HTML代码,蜘蛛程序将接收到的代码存储到原始页面的数据库中。当蜘蛛访问任何网站时,都会首先访问该网站根目录下的.txt文件!如果.txt文件禁止搜索引擎抓取某些文件或目录,蜘蛛就会遵守这些禁止协议,不会抓取那些被禁止的URL。

    2. 如何追踪链接?

    为了在互联网上爬行尽可能多的页面,搜索引擎蜘蛛会沿着网站页面上的链接从一个页面爬行到下一个页面。这个过程就像蜘蛛在蜘蛛网上爬行一样,这就是搜索引擎蜘蛛这个名字的由来。整个互联网由相互链接的网站页面组成。理论上,只要给蜘蛛足够的时间,你总能爬行互联网上的所有页面链接。但实际情况并非如此。由于网站和链接结构极其复杂,蜘蛛需要采用一定的爬行策略来遍历互联网上的所有页面。

    3. 爬取策略

    根据网站链接结构的不同,我们可以将蜘蛛的爬行策略分为深度爬行和广度爬行两种。

    深度爬行:蜘蛛沿着找到的页面链接向前爬行,直到前面没有其他链接,然后返回到第一页,沿着另一个链接向前爬行,然后再向前爬行!

    广度爬行:当蜘蛛在一个页面上发现多个链接时,它不会沿着一个链接向前爬行。相反,它会抓取页面上的所有一级链接,然后继续沿着二级页面抓取。链接爬到第三级页面!继续这样下去

    在实际工作中,蜘蛛的带宽资源和时间都是有限的,不可能爬取所有页面。深度优先和广度优先通常混合使用,这样可以照顾到尽可能多的网站(广度优先),也可以照顾到网站的一些内部页面(深度优先)。

    4.吸引蜘蛛

    从上面的介绍我们可以知道,蜘蛛不可能收录所有的页面,所以SEO就是利用各种手段来吸引蜘蛛爬行,收录你网站的更多页面。由于不能包含所有页面,因此蜘蛛必须尝试爬行重要页面。那么蜘蛛如何确定哪些页面更重要呢?影响因素有几个:

    网站和页面权重:高质量、高级的网站权重高。

    页面更新程度:更新频率高的网站权重高

    导入链接:无论是外部链接还是内部链接,要被蜘蛛抓取,都必须有导入链接进入页面。高质量的传入链接通常也会使页面上的传出链接被抓取得更深入。

    距首页的点击距离:一般来说,一个网站权重最高的是首页。大多数外部链接都指向主页。该主页也是蜘蛛访问最频繁的页面。因此,距离首页越近的页面权重相对越高,被蜘蛛抓取的机会就越大。

    5.地址数据库

    搜索引擎会建立一个地址数据库来存储页面。目的是防止搜索引擎蜘蛛重复抓取、抓取URL。这个地址数据库包含已经爬取过的页面,也有被发现后还没有爬取过的页面。这个地址数据库中的URL一定会被蜘蛛爬行吗?答案是否定的。有手动输入种子网站地址的,也有站长通过搜索引擎网页提交网址的(一般个人博客或网站都采用这种方式)。蜘蛛抓取页面后,会解析URL并与地址数据库进行比较。如果不存在则保存

    6、文件存储

    搜索引擎蜘蛛爬取的数据就存储在这个原始的页面数据库中,其中的页面数据与用户浏览器获取到的HTML一模一样。每个 URL 都有一个唯一的文件编号

    7. 复制内容检测

    蜘蛛在抓取文件时也会对文件进行一定程度的复制内容检测!当遇到权限较低、有大量抄袭、复制内容的网站时,蜘蛛很可能会停止爬行。这就是为什么一些网站管理员在日志文件中发现蜘蛛,但页面从未真正包含在内。

    【第二阶段】预处理:索引程序对抓取到的网页数据进行文本提取、中文分词、索引等处理,为调用排序程序做准备。

    由于搜索引擎数据库中的数据太多,用户在搜索框中输入关键词后不可能立即返回排名结果。然而,我们常常感觉它很快。事实上,预处理过程起着关键作用。和爬取抓取过程一样,也是在后台提前完成的。有人认为预处理就是索引,但事实并非如此。索引只是预处理的一个主要步骤。那么什么是索引呢?索引是一种对数据库列表中的一个或多个列的值进行排序的结构。建立索引之前需要完成五项任务:

    1. 提取文本

    搜索引擎要做的第一件事就是从HTML文件中去掉HTML格式标签,对其进行编程,提取出可用于排名处理的网站页面的文本内容。除了提取可见文本外,搜索引擎还可以提出以下不可见文本内容,例如:元标记中的文本内容、图像替代文本、Flash文件替代文本、链接锚文本等。

    2. 中文分词

    在汉语句子中,单词之间没有分隔符,句子中的单词都是连接在一起的。因此,这时候搜索引擎首先要区分哪些字符组成单词,哪些字符本身就是单词。例如:“波司登羽绒服”分为两个词:“波司登”和“羽绒服”。中文分词一般有两种方法:

    词典匹配:将待分析的汉字与预先制作的词典中的词条进行匹配。如果在待分析的汉字字符串中扫描字典中已有的词条,则匹配成功,或者进行分词。

    根据搜索统计:统计分词方法是指分析大量的文本样本,计算相邻词的统计概率。相邻单词出现的次数越多,它们构成单词的可能性就越大。基于统计的方法的优点是可以更快地响应新词,也有助于消除歧义。

    https://bkimg.cdn.bcebos.com/pic/8694a4c27d1ed21bcbbe1785af6eddc451da3f5e

    基于词典匹配和基于统计的分词方法各有优缺点,实际使用中的分词系统也是鱼龙混杂。

    两种方法快速高效,能够识别生词、生词并消除歧义。 )

    3.删除停用词

    什么是停用词?有一些词在页面内容中出现频率很高,但对内容没有影响。例如:“的”、“地”、“德”等助词;感叹词,如“啊”、“哈”、“啊”;介词如“由此”、“以”、“了”。英语中常见的停用词,例如“the”和“of”。这些词被称为停用词,因为它们对页面的主要含义影响很小。搜索引擎删除停用词有两个主要目的:

    一是让指标数据主题更加突出,减少不必要的计算量。

    第二个是检测你的内容是否与其他数据库中的内容存在大量重复。

    4. 消除噪音

    这里的噪音并不是我们所说的噪音,它特指一种垃圾,即多余的话!这些文字通常包含在版权声明文本、导航栏和广告中。搜索引擎需要识别并消除这种噪音,并且在排名时不要使用噪音内容。去噪的基本方法是根据HTML标签将页面分成块,区分出页眉、导航、正文、页脚、广告等区域。网站上大量的重复块往往是噪音,只能起到页面主题的作用。分散效应。对页面进行去噪后,剩下的就是页面的主要内容。

    5.冲

    同一篇文章经常会在不同网站以及同一网站的不同 URL 上重复出现。搜索引擎不喜欢这种重复的内容。用户搜索时,如果在前两个页面看到不同网站的同一篇文章,虽然内容相关,但用户体验会太差。搜索引擎希望只返回一篇相同的文章,因此需要在索引之前识别并删除重复的内容。这个过程称为“重复数据删除”

    经过上述五个步骤后,搜索引擎就可以获得反映页面主要内容的独特的基于单词的内容。然后搜索引擎程序通过分词程序将上面提取的关键词进行划分,将每个网站页面转换为一组关键词,并记录每个关键词在页面上出现的频率和次数。格式(如:标题标签、粗体、H标签、锚文本等)位置(段落),这些已经以权重的形式记录下来,然后放在一个地方,这个地方是专门用来放置的词汇表这些组合词。结构——索引库,也叫“词汇索引形式”

    6.远期指数

    将页面转换为一组关键字,并记录每个关键字在页面上的频率和出现次数。

    出现次数、格式(如出现在标题标签、粗体、H标签、锚文本等)、位置(如页面第一段)

    文本等)。这样,每个页面就可以记录为一组关键词,其中每个关键词的词频

    、格式、位置等重量信息也被记录。每个文件夹对应一个ID,文件内容表示为一组关键字。在搜索引擎的索引库中,此时关键字已经转换为关键字ID。这种数据结构称为前向索引。

    7.倒排索引

    因为前向索引不能直接用于排名。例如,用户搜索某个关键词2,如果只使用正向索引,只能找到包含该关键词的文件夹,而无法真正返回排名。这时候就要用到倒排索引了。在倒排索引中,关键字成为主键。每个关键字对应一系列文件。每个文件都包含要搜索的关键字。这样,当用户搜索某个关键词时,排序程序就可以在倒排列表中找到该关键词对应的文件

    8.特殊文件的处理

    除了 HTML 文件之外,搜索引擎通常还可以对各种基于文本的文件类型进行爬网和索引,例如

    PDF、Word、WPS、XLS、PPT、TXT 文件等。我们也经常在搜索结果中看到这些

    文件类型。但目前的搜索引擎尚不能处理图片、视频、Flash等非文本内容,也无法处理

    执行脚本和程序。尽管搜索引擎在识别图像和从Flash中提取文本内容方面取得了一些进展,但距离通过读取图像、视频和Flash内容直接返回结果的目标还很远。图片和视频内容的排名往往是基于与其相关的文本内容。所以在做SEO的时候,尽量少在你的网站上使用这些

    9、链接关系的计算

    搜索引擎抓取页面后,还必须提前计算出页面上的哪些链接指向哪些页面。每个页面上有哪些传入链接,链接中使用了哪些锚文本?正是这些复杂的链接指向关系形成了网站和页面的链接权重。

    【第三阶段】排名:用户输入关键词后,排名程序调用索引数据库数据,计算相关性,然后以一定格式生成搜索结果页面。

    1. 搜索文字处理

    中文分词:就像索引页面时一样,搜索词也必须被分割成中文单词,以将查询字符串转换为基于单词的关键字组合。分词的原理与分页的原理相同。

    删除停用词:就像索引一样,搜索引擎也需要从搜索词中删除停用词,以最大限度地提高排名相关性和效率。

    指令处理:如加号、减号等,搜索引擎需要进行相应的识别和处理

    拼写错误纠正:如果用户输入明显错误的单词或英文单词,搜索引擎会提示用户使用正确的单词或拼写。

    集成搜索触发器:例如搜索名人时,会出现图片、视频等内容,适合热门话题

    2. 文件匹配

    倒排索引可以快速匹配文件。假设用户搜索“关键字2关键字7”。排名程序只需要在倒排索引中找到“关键字2”和“关键字7”这两个词。所有页面都用两个词。经过简单的计算,可以找到所有同时包含“关键字2”和“关键字7”的页面:文件1和文件6

    3. 初始子集选择

    互联网上有数万个页面,搜索某个关键词就会出现数千万个页面。如果搜索引擎直接计算页面的相关性,那就太耗时了。事实上,用户不需要看到这数千个页面,用户只需要一两个有用的页面。这时,搜索引擎会根据用户的搜索词选择100个文件,然后返回。那么哪一百个文件将被选择呢?这取决于您的网站页面与用户搜索的关键字之间的相关匹配。具有高权重的页面将被包含在搜索引擎的预选子集中。

    4. 相关性计算

    https://pics3.baidu.com/feed/e7cd7b899e510fb315720fd61dab7398d0430ca9.jpeg@f_auto?token=2563d4cc3c04cfa9c5bc162d54b70f1e

    选择初始子集后,计算子集中的页面的关键字相关性。影响相关性的因素主要包括以下几个方面:

    关键词的频率:越常用的词对搜索词的含义贡献越小,不常用的词对搜索词的含义贡献越大。假设用户输入的搜索词是“we DKI”。 “我们”这个词非常常用,出现在很多页面上。它对搜索词“we DKI”的识别和意义相关性的贡献很小。包含“DKI”一词的页面将与搜索词“we DKI”更相关

    词频和密度:一般认为,在没有关键词积累的情况下,搜索词在页面上出现的次数越多,密度也越高,说明页面与搜索词的相关性越高。

    关键词位置和形式:正如索引部分提到的,页面上关键词的格式和位置记录在索引数据库中。关键词出现在较重要的位置,如标题标签、黑体、H1等,表明页面与关键词相关性更强。这部分就是页面SEO需要解决的问题

    关键词距离:出现分段关键词的完全匹配,表明它与搜索词最相关。例如,搜索“减肥方法”时,页面上连续完整出现的“减肥方法”四个字是最相关的。如果“减肥”和“方法”这两个词没有出现在连续匹配中并且显得更接近,搜索引擎就会认为它们的相关性稍微高一些。

    链接分析和页面权重:除了页面本身的因素外,页面之间的链接和权重关系也会影响关键词的相关性,其中最重要的是锚文本。页面以搜索词作为锚文本的传入链接越多,页面的相关性就越高。链接分析还包括链接源页面本身的主题、锚文本周围的文本等。

    5、排名过滤及调整

    计算相关性后,确定大致排名。那么搜索引擎可能会有一些过滤算法来稍微调整排名,其中最重要的是进行惩罚。尽管一些涉嫌作弊的页面根据正常权重和相关性计算排名较高,但搜索引擎的惩罚算法可能会在最后一步将这些页面移至后面。典型的例子就是百度的负6、负30、负950等11位算法。

    6.排名显示

    当所有排名确定后,排名程序调用原始页面的标题标签、描述标签、快照日期等数据在页面上显示。有时搜索引擎需要动态生成页面摘要,而不是调用页面本身的描述标签。

    7. 搜索缓存

    如果每次搜索都重新处理排名,可以说是一种巨大的浪费。搜索引擎会将最常用的搜索词存储在缓存中,用户搜索时直接从缓存中调用,无需经过文件匹配和相关性计算,大大提高了排名效率,缩短了搜索响应时间。

    8.查询点击日志

    搜索引擎记录搜索用户的IP地址、搜索关键词、搜索时间以及点击了哪些结果页面,形成日志。这些日志文件中的数据对于搜索引擎判断搜索结果的质量、调整搜索算法、预测搜索趋势等具有重要意义。

    4.前端SEO规范概述

    1、合理的标题,、、、三项的搜索权重都会一一降低,标题值可以强调重点。高度概括页面内容,不要堆砌关键词,列出重要关键词。

    2. 语义 HTML 标签

    3.非装饰图片必须添加alt

    4、将重要内容放在HTML前面,先加载。搜索引擎从上到下抓取HTML,以确保重要内容被抓取。

    5、每一页只出现一个h1标签

    6、尽量不要把页面做成flash、图片、视频,因为搜索引擎无法抓取。

    7、用得少了,就捕获不了。

    8、页面尽量平整。层次太深不利于爬行。

    9、异步加载内容(ajax)无法被搜索引擎抓取。重要信息可以直接输出,有利于用户体验和SEO优化。

    10.使用友好链接将自己网站的链接导入到别人的网站。

    11、提交尚未被各大搜索引擎登录入口收录的网站。

    12.提高网站速度。网站速度是搜索引擎排名的重要指标。

    13、创建404页面不仅是为了改善蜘蛛体验,也是为了提供更好的用户体验。

    5.前端SEO规范详细介绍

    【1】网站结构布局优化

    一般来说,你创建的网站结构层次越少,就越容易被“蜘蛛”抓取,也更容易被收录。一般中小型网站的目录结构如果超过三级,“蜘蛛”就不愿意爬下去了。并且根据相关数据调查显示:如果访问者在跳了三遍后仍未能找到他需要的信息,他很可能会离开。所以三层目录结构也是对经验的要求。为此我们需要做好以下几个方面的工作

    控制首页链接数量:网站的首页是权重最高的地方。如果首页链接太少,没有“桥梁”,“蜘蛛”就无法继续向下爬行到内页,会直接影响收录网站的数量。但是,主页上不应该有太多链接。一旦链接过多,就没有实质性的链接,很容易影响用户体验,降低网站首页的权重,收录效果也不好。

    扁平的目录层次结构:尽量让“蜘蛛”跳转到网站的任何一个内部页面只要3次跳转。

    导航优化:导航应该始终是文本形式,也可以与图像导航搭配使用,但图像代码必须进行优化。

    标签必须添加alt和title属性,告诉搜索引擎导航的定位,这样用户即使图片无法正常显示也能看到提示文字。其次,应该在每个网页中添加面包屑导航。从用户体验的角度来看,它可以让用户了解自己当前的位置以及当前页面在整个网站中的位置,帮助用户快速了解网站的组织形式,从而形成更好的位置感,提供返回各个页面的界面,方便用户操作。对于“蜘蛛”来说,它可以清楚地了解网站的结构,同时添加大量的内部链接,以方便爬行,降低跳出率。

    网站的结构布局:页眉:标志和主导航,以及用户信息。页面正文:左侧的主要文本,包括面包屑导航和正文。将热门文章和相关文章放在右侧,可以留住访问者并让他们停留更长时间。对于“蜘蛛”来说,这些文章都是相关链接,增强了页面的相关性,也增强了页面的权重。页面底部有版权信息和友好链接。

    将重要内容的 HTML 代码放在前面:搜索引擎从上到下抓取 HTML 内容。利用这个功能,可以先读取主要代码,而将广告等不重要的代码放在底部。比如左栏和右栏代码不变的情况下,只需要改变样式,使用float:left;和浮动:右;将两列在显示中的位置互换,以保证重要的代码放在前面,以便爬虫先爬取。这同样适用于多列。
页: [1]
查看完整版本: 搜索引擎工作原理及作用:如何帮助用户找到所需内容