搜索引擎如何去抓取网页

  搜索引擎看似简单的抓取-入库-查询工作,但其中各个环节暗含的算法却十分复杂。搜索引擎抓取页面工作靠蜘蛛(Spider)来完成,抓取动作很容易实现,但是抓取哪些页面,优先抓取哪些页面却需要算法来决定,下面介绍几个抓取算法:

  1、宽度优先抓取策略:

  我们都知道,大部分网站都是按照树状图来完成页面分布的,那么在一个树状图的链接结构中,哪些页面会被优先抓取呢?为什么要优先抓取这些页面呢?宽度优先抓取策略就是按照树状图结构,优先抓取同级链接,待同级链接抓取完成后,再抓取下一级链接。如下图:

  


 

  大家可以发现,我在表述的时候,使用的是链接结构而不是网站结构。这里的链接结构可以由任何页面的链接构成,并不一定是网站内部链接。这是一种理想化的宽度优先抓取策略,在实际的抓取过程中,不可能想这样完全宽度优先,而是有限宽度优先,如下图:

  


 

  上图中,我们的Spider在取回G链接时,通过算法发现,G页面没有任何价值,所以悲剧的G链接以及下级H链接被Spider给和谐了。至于G链接为什么会被和谐掉?好吧,我们来分析一下。

  2、非完全遍历链接权重计算:

  每个搜索引擎都有一套pagerank(指页面权重,非google PR)计算方法,并且经常会更新。互联网近乎无穷大,每天都会产生海量的新链接。搜索引擎对于链接权重的计算只能是非完全遍历。为什么Google PR要三个月左右才更新一次?为什么百度大更新一个月1-2两次?这就是因为搜索引擎采用了非完全遍历链接权重算法来计算链接权重。其实按照目前的技术,实现更快频率的权重更新并不难,计算速度以及存储速度完全跟得上,但为什么不去做?因为没那么必要,或者已经实现了,但不想公布出来。那,什么是非完全遍历链接权重计算?

  我们将K数量的链接形成一个集合,R代表链接所获得的pagerank,S代表链接所包含的链接数量,Q代表是否参与传递,β代表阻尼因数,那么链接所获得的权重计算公式为:

  


 

  从公式 里可以发现,决定链接权重的是Q,如果链接被发现作弊,或者搜索引擎人工清除,或者其他原因,Q被设为0,那么再多的外链都没用。β是阻尼因数,主要作用是防止权重0的出现,导致链接无法参与权重传递,以及防止作弊的出现。阻尼因数β一般为0.85。为什么会在网站数量上乘以阻尼因数?因为一个页面内并非所有的页面都参与权重传递,搜索引擎会将已经过滤过的链接再度剔除15%。

  但这种非完全遍历权重计算需要积累到一定数量的链接后才能再次开始计算,所以一般更新周期比较慢,无法满足用户对即时信息的需求。所以在此基础上,出现了实时权重分配抓取策略。即当蜘蛛完成抓取页面并入口后,马上进行权重分配,将权重重新分配待抓取链接库,然后蜘蛛根据权重高低来进行抓取。

  3、社会工程学抓取策略

  社会工程学策略,就是在蜘蛛抓取的过程中,加入人工智能,或者通过人工智能培训出来的机器智能,来确定抓取的优先度。目前我已知的抓取策略有:

  a、热点优先策略:对于爆发式的热点关键词进行优先抓取,而且不需要经过严格的去重和过滤,因为会有新的链接来覆盖以及用户的主动选择。

  b、权威优先策略:搜索引擎会给每个网站分配一个权威度,通过网站历史、网站更新等来确定网站的权威度,优先抓取权威度高的网站链接。

  c、用户点击策略:当大部分搜索一个行业词库内的关键词时,频繁的点击同一个网站的搜索结果,那么搜索引擎会更频繁的抓取这个网站。

  d、历史参考策略:对于保持频繁更新的网站,搜索引擎会对网站建立更新历史,根据更新历史来预估未来的更新量以及确定抓取频率。

  对SEO工作的指导:

  搜索引擎的抓取原理已经深入的讲解了,那么现在要浅出这些原理对SEO工作的指导作用:

  A、定时、定量的更新会让蜘蛛准时爬行抓取网站页面;

  B、公司运作网站比个人网站的权威度更高;

  C、建站时间长的网站更容易被抓取;

  D、页面内应适当的分布链接,太多、太少都不好;

  E、受用户欢迎的网站同样受搜索引擎欢迎;

  F、重要页面应该放置在更浅的网站结构中;

  G、网站内的行业权威信息会提高网站的权威度。

  这次教程就到这里了,下次教程的主题是:页面价值以及网站权重的计算。

  原文地址:http://www.cmshtml.com/a/201212/30.html

时间: 2024-11-01 10:39:31

搜索引擎如何去抓取网页的相关文章

搜索引擎爬虫优先抓取哪些网页

网站的整体流量主要取决于网站页面的整体收录.网站页面的整体排名以及网站页面的整体点击率,这三个因素也是有先后顺序的,排名排一位的就是整体收录了,那么整体收录又是由哪些决定的呢?首先要想被收录,肯定页面要被搜索引擎抓取吧,没有抓取,也就不可能有收录.所以我们在优化收录的时候,一定要想办法让搜索引擎的爬虫程序去尽量抓取更多的页面,那么对于搜索引擎来说,它的源也是有限的,而且由于各种限制,它也只能抓取互联网上所有网页的一部分,而在抓取的这些页面中,它索引的也只是一部分,搜索引擎的蜘蛛程序会优先抓取哪些

搜索引擎抓取网页原理学习笔记

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 做正规seo技术必会的搜索引擎抓取网页原理应该是很复杂的.可以写洋洋洒洒的长篇论文.这里就将我自己学习到的网页抓取原理记录一下.笔记应该不够完整只将重要过程做个介绍 首先抓取页面的工作需要分配个搜索引擎蜘蛛.也就是机器人了.每个搜索引擎都有大量的蜘蛛供其差遣.在如今这个信息更新极快得年代每个蜘蛛都不会闲着.搜索引擎给每只蜘蛛分配了大量网址.确

分析搜索引擎如何首先抓取最重要的网页?

搜索引擎面对海量的网页,他们并不是平行的抓取每一个网页,因为无论搜索引擎数据库怎么扩张,都是无法跟上网页的增长速度,搜索引擎会优先抓取最重要的网页,一方面节省数据库,一方面对普通的用户也是有帮助的,因为,对用户来说,他们并不需要海量的结果,只需要最重要的结果.所以说一个好的搜集策略是优先搜集重要的网页,以便能够在最短的时间内把最重要的网页抓取过来. 那么搜索引擎如何首先抓取最重要的网页? 通过对海量的网页特征分析,搜索引擎认为重要的网页有如下的基本特征,虽然不一定完全准确,但是大多数时候确实是这

搜索引擎抓取网页的要点是什么

大家都知道我们所建的网站,通过百度蜘蛛来抓取页面从而收录到搜索引擎里面去.但是大家应该不知道蜘蛛是通过什么原理来抓取你网站的内容的.可以说蜘蛛抓取页面分为以下4个工作原理 一深度优先抓取 什么是深度优先抓取呢?蜘蛛在你网站抓取这个页面的链接的时候会一直顺这这个链接去抓取.这个页面有链接顺着链接在抓取下个页面,下个页面有链接一直顺着抓取.直到全部抓取完毕.这个就是蜘蛛深度优先抓取的原理. 二宽度优先抓取 什么是宽度抓取呢?蜘蛛一个性先把你网站整个页面抓取一次,然后是在下一个页面的全部页抓取一次.这

蜘蛛抓取网页过程的四步曲

随着搜索引擎的不断发展与升级,搜索引擎所派出的蜘蛛也变得越来越智能了,所以为了要弄清楚蜘蛛的工作原理,为了更好的优化自己的网站我们就必须不断的去研究蜘蛛.下面,我就和大家简单的聊聊蜘蛛的基本工作原理吧: 蜘蛛工作的第一步:爬行你网站的网页,寻找合适的资源. 蜘蛛它有一个特性,那就是他的运动轨迹通常都是围绕着蜘蛛丝而走的,而我们之所以将搜索引擎的机器人命名为蜘蛛其实就是因为这个特性.当蜘蛛来到你的网站之后,它就会顺着你网站中的链接(蜘蛛丝)不断的进行爬行,因此如何让蜘蛛能够更好的在你的网站中进行爬

百度抓取网页文件规则最大125K

百度的名字寄托着百度公司对自身技术的信心,另一层含义就是突破"事儿做到九十九度就是做到头"的西方说法,百度就是想要力争做到一百度,做到顶上开花的境界. 百度公司不同于一般意义上的网络公司.它既不是着眼于互联网内容的提供,也不是门户网站,而是一家立足于自主掌握并提供互联网核心技术的技术型公司.在中国互联网经济迅猛发展的今天,百度公司结合世界先进的网络技术.中国语言特色以及中国互联网经济发展的现状,开发出了中国互联网信息检索和传递基础设施平台,并且运用最先进的商业模式,直接为整个中国的互联

PHP的cURL库功能简介:抓取网页,POST数据及其他

  使用PHP的cURL库可以简单和有效地去抓网页.你只需要运行一个脚本,然后分析一下你所抓取的网页,然后就可以以程序的方式得到你想要的数据了.无论是你想从从一个链接上取部分数据,或是取一个XML文件并把其导入数据库,那怕就是简单的获取网页内容,cURL 是一个功能强大的PHP库.本文主要讲述如果使用这个PHP库. 启用 cURL 设置 首先,我们得先要确定我们的PHP是否开启了这个库,你可以通过使用php_info()函数来得到这一信息. ﹤?php phpinfo(); ?﹥ 如果你可以在网

PHP实现抓取网页的所有超链接的代码

因为最近要做一个类似专业搜索引擎的东西,需要抓取网页的所有超链接.大家帮忙测试一下子,下面的代码是否可以针对所有的标准超链接. 通用HTML标准超链接参数取得正则表达式测试 因为最近要做一个类似专业搜索引擎的东西,需要抓取网页的所有超链接. 大家帮忙测试一下子,下面的代码是否可以针对所有的标准超链接. 测试代码如下:   <?php  // -------------------------------------------------------------------------- // 

用Python编写网络爬虫(一):抓取网页的含义和URL基本构成

一.网络爬虫的定义 网络爬虫,即Web Spider,是一个很形象的名字. 把互联网比喻成一个蜘蛛网,那么Spider就是在网上爬来爬去的蜘蛛. 网络蜘蛛是通过网页的链接地址来寻找网页的. 从网站某一个页面(通常是首页)开始,读取网页的内容,找到在网页中的其它链接地址, 然后通过这些链接地址寻找下一个网页,这样一直循环下去,直到把这个网站所有的网页都抓取完为止. 如果把整个互联网当成一个网站,那么网络蜘蛛就可以用这个原理把互联网上所有的网页都抓取下来. 这样看来,网络爬虫就是一个爬行程序,一个抓