18143453325 在线咨询 在线咨询
18143453325 在线咨询
所在位置: 首页 > 营销资讯 > 建站知识 > 搜索引擎的蜘蛛爬虫是怎么样抓取页面的

搜索引擎的蜘蛛爬虫是怎么样抓取页面的

时间:2022-08-24 12:33:01 | 来源:建站知识

时间:2022-08-24 12:33:01 来源:建站知识

 

什么是蜘蛛,也叫爬虫,其实是一段程序。这个程序的功能是,沿着你的网站的URL一层层的读取一些信息,做简单处理后,然后返馈给后台老板(服务器)进行集中处理。我们必需了解蜘蛛的喜好,对网站优化才能做到更好。接下来我们谈谈蜘蛛的工作过程。

一、蜘蛛遇到的麻烦

蜘蛛也会遇到麻烦?是的,做人有做人的难处,做蜘蛛有做蜘蛛的麻烦!处理动态网页信息一直是网络蜘蛛面临的难题。所谓动态网页,是指由程序自动生成的页面。由于现在开发语言不断增多,所开发出来的动态网页类型也越来越多,如asp、jsp、php等。这些类型的网页是不经编译的,直接解释的语言,比如我们的IE就是一个强大的解释器;而对于网络蜘蛛来说,处理这些语言可能还稍微容易一些。网络蜘蛛真正比较难于处理的是一些脚本语言(如VBscript和Javascript)生成的网页,这就是我们在做网站优化时,为什么反复强调尽量不要采用JS代码,因为如果要完善地处理好这些网页,网络蜘蛛需要有自己的脚本解释程序。整个蜘蛛系统一般采用插件的形式,通过一个插件管理服务程序,遇到不同格式的网页采用不同的插件处理。而加载这些脚本程序对页面进么处理,无疑是增加了蜘蛛程序的时间复杂度,换句话说调用这些插件就是太浪费蜘蛛宝贵的时间了。所以,做为一个SEOer,所要做的一项工作是进行网站优化,减少不必要的脚本代码,以利蜘蛛爬行!

二、蜘蛛的更新周期

世界永远是动态的,也就是说是不断变化的;当然一个网站的内容也是经常变化的,不是更新就是改模板。一个智能的爬虫也需要不断地更新其抓取网页的内容,也叫更新网页快照。因此蜘蛛的开发者会为爬虫设定一个更新周期(连这个也是由一个动态算法所决定的,这就是我们常说的算法更新),让其按照指定的时间去扫描网站,查看对比出哪些页面是需要进行更新工作的,诸如:主页的标题是否有更改,哪些页面是网站新增页面,哪些页面是已经过期失效的死链接等等。一个功能强太的搜索引擎的更新周期是不断优化的,因为搜索引擎的更新周期对搜索引擎搜索的查全率有很大影响。不过如果更新周期过长,便会使搜索引擎的搜索精确性和完整性降低,会有一些新生成的网页搜索不到;若更新周期太过于短,则技术实现难度加大,而且会对带宽、服务器的资源造成浪费。所以,一个灵活的搜索引擎的更新周期显得犹为重要,更新周期是搜索引擎永恒的话题;也是程序员和SEO不断要研究的课题。

三、蜘蛛的爬行策略

在上面我们介绍上蜘蛛怕什么和更新周期这两个话题,现在我们步入关键的主题:爬行策略。

1.逐层抓取策略

搜索引擎通过WEB爬虫来收集网页,这个过程是一个算法,具体可参考图和树的两种数据结构。我们知道一个站点只有一个首页,这是蜘蛛爬行开始抓取的地方。从最开始的首页获取该站点的页面,接着提取主页面里的所有链接(即内链),再根据新的链接获取新的页面并提取新页面里的链接,重复这个过程,直到整站的叶子节点(即每一个栏目下面子栏目的内容页面)这就是爬虫进行页面收集的过程。由于很多Web站点的网页信息量过大,如果这样爬往往要爬很久,所以站点页面的获取在一个大的方向上是逐层抓取的,比如,只有两层采用逐层抓取策略,这样可以避免对信息提取的“陷入”,使得WEB爬虫的效率过低。因此,现在的WEB爬虫在爬行中采用的遍历算法主要是图论中的广度优先算法和最佳优先算法,而深度优先算法由于容易引起提取的“陷入”而较少地使用。

2、不重复抓取策略

万维网上的网页数量非常大,所以对其进行抓取是一个巨大工程,网页的抓取需要花费非常多线路带宽、硬件资源、时间资源等等。如果经常对同一个网页重复抓取不但会大大的降低了系统的效率,还造成精确度不高等问题。通常的搜索引擎系统都设计了不重复进行网页抓取的策略,这是为了保证在一定时间段内只对同一个网页进行一次抓取。

B-树学名:平衡多路查找树,这一原理广泛地应用于操作系统的算法中。B-树的查找算法也完全可以用来设计搜索引擎中不重复抓取URL的匹配算法(就是对比)。

上述文字、过程、方法来源广州SEO中心(官网:)所有,转载请注明或保留本段文字。

74
73
25
news

版权所有© 亿企邦 1997-2022 保留一切法律许可权利。

为了最佳展示效果,本站不支持IE9及以下版本的浏览器,建议您使用谷歌Chrome浏览器。 点击下载Chrome浏览器
关闭