本人最近几天正在阅读关于搜索引擎核心技术的一本书,今天看到了一个关于搜索引擎网页更新策略的文章,特来给大家分享一下,因为个人觉得这能够加深大家对搜索引擎的理解。
我就简单的用自己总结的语言来给大家介绍下,搜索引擎是如何更新已收录页面的。
背景
我们网站的一个页面被收录了,搜索引擎不可能每天还来爬一遍特意检查下页面有没有变化;那么假如我们将这个页面做了一定的改动,搜索引擎又会如何知道呢?很显然,某个网页已被删除或者内容作出重大变动,而搜索引擎对此却茫然不知,仍按照旧有内容排序,将其作为结果搜索提供给用户,其用户体验糟糕的不言而喻。
所以,对于已经抓取过的网页,爬虫还要负责保持快照内容和互联网实际内容的同步,这取决于爬虫所采用的网页更新策略!
网页更新策略
搜索引擎重用的网页更新策略有三种
历史参考策略
用户体验策略
聚类抽样策略
这三种方式的顺序也能够体现搜索引擎的进步,接下来就给大家简单介绍下三种策略的区别。
历史参考策略
这种策略用通俗的话来说就是最不靠谱的了。因为它建立于如下假设之上:过去频繁更新的网页,那么将来也会频繁更新;这种方法是通过判断你网站页面的历史更新信息,来预估某个网页何时进行更新,这时就过来再次爬取你网站已被收录的页面。
哪里的改动算更新?
不同的方法侧重点不同,有的研究将一个网页划分成不同的区域,抓取策略应该忽略掉广告栏或者导航栏这类不重要区域的变化,而集中到页面的核心内容变化探测上。
缺点:如果网站的网页都是首次抓取,那么就没有历史信息可供参考,也就无法预估更新周期了,另外如果为每个网页保存其历史信息,搜搜索引擎会增加大量的额外负担。
用户体验策略
这种策略思想是这样的:以用户体验为核心,即使索引过的网页内容是过时的,那么在不影响用户体验的前提下,晚些更新这些过时网页也是未尝不可的。
那么如何判定一个网页何时更新为好?取决于一个网页的内容变化所带来的搜索质量的变化,也就是用搜索结果的排名变化来衡量,影响越大的网页,则越快更新。可能有的朋友对这句话不怎么理解,我再解释一下,首先你要了解,搜索引擎的爬虫程序和排名程序是相对独立却又紧密相关的。
通过搜索引擎搜索到的一个页面的质量变化,比如内容被删了、大幅修改了,等等都会直接导致跳出率增加、停留时间减少等等(搜索质量的体现),从而导致网页排名下降,搜索引擎通过判断排名变化来衡量影响的大小,当然,影响包括好和坏,好的影响比如排名上升也是属于影响。
这里涉及到一个量的问题,就是变化在多大的范围内算为影响?用户体验策略保存网页的多个历史版本,并根据过去每次变化对于搜索质量的影响,得出一个平均值,以此作为爬虫再次抓取该网页的时机。
缺点:与第一种一样,需要保存网页都额历史信息,会给搜索引擎增加额外的负担,同样会存在没有历史信息的情况。
聚类抽样策略
聚类抽样的原理:网页具有一些属性,根据这些属性可以预测其更新周期,具有相似属性的网页,其更新周期也是类似的。
所以简单点说就是,根据网页表现出来的特性,将其聚类成不同的类别,每个类别内的网页具有详细的更新周期,然后从这些类别中分别抽取一部分最具有代表性的网页,计算这些网页的更新周期,然后将这个更新周期应用于这个类别里的所有网页。最终,只需要根据网页所属类别来决定其更新频率。
其实这一点与我们平时判断一个网站的关键词频率的方法是相似的,因为判断一个网站的关键词密度多少合适,就是分析这个行业类的平均密度是怎么样的。
那么搜索引擎是根据网页的哪些属性来分类的呢?分为两类:
静态特性:页面的内容、图片数量、页面大小、链接深度、等等十几种因素。
动态特性:体现了静态特征随着时间的变化情况,也就是图片数量的变化、链接的变化等等。
这种更新策略是效果是明显好于前两种的,第一,无需保存每个网页的历史信息,第二,对于没有历史信息的新网页也可以判断其更新周期。
以上就是搜索引擎对于网页的更新策略,虽然这对于我们实际操作没有什么用处,但是能够帮助我们进一步了解搜索引擎的!后面我还会给大家分享关于搜索引擎原理方面的干货!