欢迎访问宝鸡世纪网络官网,宝鸡网站建设已累计服务超过900家企业!  咨询热线:0917-3535180 3536690

10年建站历程,900家客户的选择,值得信赖!


世纪网络浅议搜索引擎的检索、策略和存储

作者:孙斌      发布时间:2009-01-20      浏览:1265

62.9K


本文简单的分析了爬虫抓取网页的一些基本原理与大家同享,能基本了解网页的几个排名因素:链接的建设和网页的布局,多多体会,希望能给大家有所帮助。

  爬虫的工作原理包括抓取,策略和存储,抓取是爬虫的基本劳动过程,策略是爬虫的智慧中枢,存储是爬虫的劳动结果,我们按照由浅入深的过程来了解整个爬虫的工作原理。

  1:从种子站点开始抓取

  基于万维网的蝴蝶型结构,这种非线性的网页组织结构,就会出现一个抓取顺序的问题,这种抓取顺序的策略必须保证尽可能地抓取所有网页。

  一般来说,爬虫选择抓取蝴蝶型左边的结构为抓取出发点,典型的如sina和sohu这样的门户网站的主页,每次抓取网页之后分析其中的URL,这种字符串形式的链接是指向其他网页的URL,它们指引着爬虫抓取其他网页。(基于这点我们可以初步理解引擎先左后右,先上后下的抓取原因了)

  a:深度优先的策略(Depth-First Traversal)

  深度优先的遍历策略类似家族继承策略,典型的如封建帝王的继承,通常为长子,如果长子去世,长孙的优先级大于次子的优先级(这点大家多多仔细分析琢磨下),如果长子和长孙都已经去世,那么次子继承,这种继承上的优先关系也称深度优先策略。(从这点上我们可以了解到蜘蛛的抓取栏目页先后顺序)

  b:宽度优先的策略(Breadth-First Traversal)

  宽度优先我们又称为广度优先,或者叫层次优先,例如:我们在给祖辈和父辈还有平辈敬茶的时候先给最年长的祖辈,其次为父辈,最后为平辈,在爬虫抓取上也采取了这样的策略。基于使用宽度有限的策略主要原因有三点:

  1>首页重要的网页往往离种子比较近,例如我们打开新闻站的时候往往是最热门的新闻,随着不断的深入冲浪,PV值增加,所看到网页重要性越来越低。

  2>万维网的实际深度最多能达到17层,到达某个网页的路径深入很多,但是总存在一条很短的路径。

  3>宽度优先有利于多爬虫的合作抓取(Mozk是根据前辈的资料分析和IIS日志分析,暂且认为,有不同见解,欢迎讨论交流),多爬虫合作通常先抓取站内连接,遇到站外连接然后开始抓取,抓取的封闭性很强。

  附:链接的优化,避抓取链接的死循环,同时也避免该抓取的资源没有得到抓取,浪费大量的资源做无用功。(如何建立合理的内部链接可以参照小站)。

  2:网页抓取优先策略

  网页的抓取优先策略也称为“面页选择问题”(page selection),通常抓取重要性的网页,这样保证有限资源(爬虫,服务器负载)尽可能的照顾到重要性高的网页,这点应该很好理解。

  那么哪些网页才是重要性的网页呢?

  网页的重要性判断因素很多,主要有链接欢迎度(知道链接的重要性了吧),链接的重要度和平均深度链接,网站质量,历史权重等主要因素。

  链接的欢迎度主要是由反向链接(backlinks)的数量和质量决定,我们定义为IB(P)。

  链接的重要度,是一个关于URL字符串的函数,仅仅考察字符串本身,比如认为“.com”“home”的URL重要度比“.cc”和“map”较高(这里是比方不是绝对,就如我们通常默认首页index.**一样,要定义其他名称也可以,另外排名是个综合因素,com的不一定排名就好,只是其中一个很小的因素而已),我们定义为IL(P)

  平均连接深度,依笔者之见,根据上面所分析的宽度优先的原则计算出全站的平均链接深度,然后认为距离种子站点越近重要性越高。我们定义为ID(P)

  我们定义网页的重要性为I(P)

  那么:

  I(p)=X*IB(P)+Y*IL(P)

  ID(P)由宽度优先的遍历规则保证,因此不作为重要的指标函数,为了保证重要性高的网页被抓取,所以,这样的抓取完全是合理,科学的。

  本文的第1点是讲解的一个点,第二点是分析的一个面。

  SEO的目标是提高网站的质量,提高网站的质量是提高网站用户体验友好度,提高网站用户优化度的终极目标是离开SE做常青树。毕竟SEO是一个排名的逆向推理过程,不可能全对,只是对数据的一种分析,任何资料只能是参考,还是要多靠自己的实践


0