当前位置:社会杂谈网 >> 互联网 >> 文章正文

搜索引擎原理

发布于:2020-12-13 被浏览:2502次

1.1 搜索引擎工作原理

搜索引擎优化的主要任务之一是提高网站的搜索引擎友好性。因此,搜索引擎优化的每一个环节都会与搜索引擎工作流程有着必然的联系。实际上,搜索引擎优化的研究就是对搜索引擎工作流进行逆向推理。所以学习搜索引擎优化要从了解搜索引擎的工作原理开始。

搜索引擎的主要任务包括:页面抓取、页面分析、页面排序和关键词查询。

页面抓取:是指搜索引擎通过蜘蛛程序在互联网上抓取页面并存储的过程,为搜索引擎执行各种任务提供数据支持。

页面分析:主要指对检索到的网页进行信息提取处理,包括提取页面的文本信息,对文本信息进行分段,为后续建立关键词索引和关键词倒置索引提供基础数据。

页面排序:搜索引擎通过结合页面的内部和外部因素,计算页面与关键词的关联度,从而得到与关键词相关的页面排序列表。

关键词查询:搜索引擎接收用户的查询请求,对查询信息进行剪切匹配,然后将相应的页面排序列表返回给用户。

1.1.1 搜索引擎抓取策略

其实搜索引擎对网页的抓取就是在互联网上收集数据,这是搜索引擎最基本的工作。搜索引擎的数据收集能力直接决定了搜索引擎能够提供的信息量和互联网的覆盖面,从而影响搜索引擎查询结果的质量。因此,搜索引擎总是想尽一切办法来提高自己的数据收集能力。

搜索引擎利用数据采集程序在互联网上抓取数据,我们称之为蜘蛛程序或机器人程序。

1.页面抓取流程

在互联网中,URL是每个页面的入口地址,搜索引擎的蜘蛛程序通过URL抓取页面。搜索引擎蜘蛛程序从原URL列表开始,通过URL抓取并存储原页面;同时,提取原始页面中的URL资源,并添加到URL列表中。如果你一直这样循环下去,你可以从网上获得足够的页面,如图2-1所示。

图 2-1 搜索引擎抓取页面简单流程

URL是页面的入口,域名是网站的入口。搜索引擎蜘蛛程序通过域名进入网站,从而抓取网站页面。换句话说,搜索引擎在互联网上抓取页面的首要任务是建立一个足够大的原始域名列表,然后通过域名输入相应的网站,从而在这个网站上抓取页面。

对于网站来说,要想被搜索引擎收录,第一个条件就是加入搜索引擎的域名列表。以下是加入搜索引擎域名列表的两种常见方式。

首先,使用搜索引擎提供的网站登录门户向搜索引擎提交网站的域名。例如,谷歌的网站登录地址是http://www.google.com/addurl/.对于提交的域名列表,搜索引擎只会定期更新。所以这种做法比较被动,从域名提交到网站收录需要很长时间。以下是主流中文搜索引擎的网站投稿词条。

实际上,我们只需要提交网站的主页地址或域名,搜索引擎就会跟踪主页中的链接来抓取其他页面。

百度:http://www.baidu.com/search/url_submit.htm.

360:http://info.so.360.cn/site_submit.html。

搜狗:http://www.sogou.com/feedback/urlfeedback.php.

谷歌:http://www.google.com/addurl/(注册需要在提交前打开网站管理员工具)。

其次,通过与外部网站建立链接关系,搜索引擎可以通过外部网站找到我们的网站,从而实现网站的收录。这样,主动权就掌握在我们自己手里了(只要我们有足够高质量的链接),上市速度比主动提交给搜索引擎要快得多。取决于外部链接的数量、质量和相关性,大约2 ~ 7天就会被搜索引擎收录。

2.页面抓取

通过以上介绍,相信读者已经掌握了搜索引擎加速收录网站的方法。但是,如何才能增加网站包含的页面数量呢?需要了解搜索引擎收录页面的工作原理。

如果将网站页面集合视为一个有向图,则网站中的页面按照特定的策略从指定的页面沿着页面中的链接遍历。不断将访问过的URL从URL列表中移除,保存原页面,同时提取原页面中的URL信息;然后,URL分为域名和内部URL。同时判断URL是否被访问过,未被访问过的URL添加到URL列表中。递归扫描网址列表,直到所有网址资源耗尽。通过这些努力,搜索引擎可以建立一个庞大的域名列表,一个页面URL列表,存储足够的原始页面。

3.页面抓取方式

通过以上内容,我们已经了解了搜索引擎抓取页面的过程和原理。但是,在互联网上亿的页面中,搜索引擎如何抓取更多相对重要的页面呢?这与搜索引擎中页面抓取的方式有关。

页面抓取是指搜索引擎对页面进行抓取的策略,目的是过滤掉互联网上更为相对重要的信息。页面抓取的方式取决于搜索引擎对网站结构的理解。如果使用相同的抓取策略,搜索引擎可以在同一时间抓取某个网站更多的页面资源,那么它在网站上停留的时间就会更长,抓取的页面数量自然会更多。因此,加深对搜索引擎页面抓取模式的理解,有利于为网站建立友好的结构,增加抓取的页面数量。

常见的搜索引擎抓取方式主要有广度优先、深度优先、大站优先、高权重优先、暗网抓取和用户提交等。接下来,将详细介绍这些方法及其优缺点。

阔度第一如果把整个网站看成一棵树,首页是根,每一页都是叶。广度优先是一种横向爬取页面的方式,从树的浅层开始,直到爬取同一层的所有页面,才进入下一层。所以在优化网站的时候,要把网站中比较重要的信息显示在一个比较浅的页面上(比如在首页推荐一些比较热门的产品或者内容)。因此,通过广度优先抓取,搜索引擎可以优先抓取网站中相对重要的页面。让我们看看广度优先的捕获过程。首先,搜索引擎从网站的首页开始,抓取首页上所有链接指向的页面,形成页面集合(A),分析集合(A)中所有页面的链接;然后顺着这些链接,抓取下一页,形成页面集合(B)。这样从浅页递归解析链接,就可以对深页进行抓取,直到满足某个设定的条件才能停止抓取过程,如图2-2所示。图2-2广度优先捕获流程

深度优先与广度优先抓取正好相反。深度优先是抓取页面的一种垂直方式。它首先在浅页中跟踪一个链接,从而一步一步地爬取深页,然后在爬取最深页后返回浅页继续爬取深页。使用深度优先抓取方法,搜索引擎可以抓取网站中隐藏的、不受欢迎的页面,以满足更多用户的需求。让我们来看看深度优先捕获过程。首先,搜索引擎会抓取网站的主页,提取主页中的链接;然后沿着其中一个链接抓取页面1-1,提取链接;然后,沿着页面1-1中的一个链接A-1抓取页面2-1,同时提取其中的链接;然后沿着第2-1页的一个链接B-1继续抓取更深的页面。这是递归执行的,直到抓取到网站最深的页面或者满足某个设定的条件,才返回首页继续抓取,如图2-3所示。图2-3深度优先抓取过程

高权重,优先级权重,简单来说就是搜索引擎对网页重要性的评价。所谓重要,说到底就是一个网站或者网页的信息价值。高权重优先是一种先抓取URL资源列表中高权重网页的网页抓取策略。网页的权重(比如Google PageRank)往往是由很多因素决定的,比如网页外部链接的数量和质量。如果下载一个URL,会重新计算所有下载的URL资源的权重值,效率极低,显然不现实。因此,搜索引擎倾向于在下载几个URL资源后计算下载的URL的权重(即权重计算不完全),从而确定这些URL资源对应的页面的权重值,从而优先抓取权重值较高的页面。因为重量计算是基于部分数据,所以它可能与真实重量有很大不同(即失真)。因此,这种高权重优先的抓取策略也可能优先考虑二级页面。

用户提交为了抓取更多的网页,搜索引擎也允许站长自愿提交页面(如通过Sitemap提交)。站长只需要将网站中页面的URL按照指定的格式制作成文件提交给搜索引擎,搜索引擎就可以通过文件对网站中的页面进行抓取和更新。这种站长主动提交页面的方式大大提高了搜索引擎抓取页面的效率,也大大增加了抓取的网页数量(目前主流搜索引擎都支持这种页面抓取方式,如Google、百度、搜狗等。).