网络爬虫的处理方法及装置制造方法及图纸

技术编号:15956206 阅读:72 留言:0更新日期:2017-08-08 09:55
本发明专利技术公开了一种网络爬虫的处理方法及装置,涉及互联网技术领域,解决了现有的网络爬虫运行过程中出现的爬取任务拥塞的问题。本发明专利技术的方法包括:判断待爬取页面的类型,所述待爬取页面的类型包括:内容页面和目录页面;将所述待爬取页面的任务以先进先出的处理顺序保存在任务队列中;当确定爬取任务拥塞时对任务队列进行整理,将类型为目录页面的待爬取页面的任务放置在所述任务队列的队列尾部。本发明专利技术主要用于提高网络爬虫的爬取效率。

【技术实现步骤摘要】
网络爬虫的处理方法及装置
本专利技术涉及互联网
,特别是涉及一种网络爬虫的处理方法及装置。
技术介绍
网络爬虫是一种按照一定的规则,自动的抓取网络信息的程序或者脚本。网络爬虫从网站的某一个页面(通常是首页)开始,读取网页的内容,找到在网页中的其他链接地址,然后通过这些链接地址寻找下一个网页,这样一直循环下去,直到把这个网站所有的网页都抓取完为止。由于网络爬虫在爬取网络信息时,是通过链接来爬取每个页面的,在爬取过程中会遇到由于获取的链接数量过多,使得爬虫的爬取任务呈现指数级增长的情况。在这种情况下,如果爬虫的爬取能力不足,就会造成爬取任务的拥塞,从而影响到整个网络爬虫的效率。为了避免上述问题,现有技术通常使用三种方法进行应对。一是重启爬虫:让爬虫重新开始爬取某些任务,这样做可以保证不会阻塞优先级比较高的任务的爬取;但是由于此方法是直接重启爬虫系统,所以会丢失正在运行的任务,破坏当前的运行环境,从而对某些正在运行的任务造成损害。二是增添限定条件,将爬虫的爬取任务倍增的可能性降低;这种方法理论上能够避免爬虫的拥塞,但是由于限定条件的不确定性,所以在实际应用环境中实现度不高,往往不能满足避免拥塞的需求。三是设置优先级,优先运行重要的任务;这种方法能够保证重要任务的完成,但是从整体上对于爬虫来说仍然会降低运行效率,某些任务甚至永远不能完成,而当某些重要任务需要同时被完成时,仍然会出现拥塞现象。
技术实现思路
有鉴于此,本专利技术提出了一种网络爬虫的处理方法及装置,主要目的在于解决网络爬虫运行过程中出现的爬取任务拥塞的问题。依据本专利技术的第一个方面,本专利技术提出了一种网络爬虫的处理方法,包括:判断待爬取页面的类型,所述待爬取页面的类型包括:内容页面和目录页面;将所述待爬取页面的任务以先进先出的处理顺序保存在任务队列中;当确定爬取任务拥塞时对任务队列进行整理,将类型为目录页面的待爬取页面的任务放置在所述任务队列的队列尾部。依据本专利技术的第二个方面,本专利技术提出了一种网络爬虫的处理装置,包括:判断单元,用于判断待爬取页面的类型,所述待爬取页面的类型包括:内容页面和目录页面;保存单元,用于将所述待爬取页面的任务以先进先出的处理顺序保存在任务队列中;整理单元,用于当确定爬取任务拥塞时对任务队列进行整理,将类型为目录页面的待爬取页面的任务放置在所述任务队列的队列尾部。借由上述技术方案,本专利技术实施例提供的网络爬虫的处理方法及装置,能够通过判断待爬取页面的类型,所述待爬取页面的类型包括:内容页面和目录页面;将所述待爬取页面的任务以先进先出的处理顺序保存在任务队列中;当确定爬取任务拥塞时对任务队列进行整理,将类型为目录页面的待爬取页面的任务放置在所述任务队列的队列尾部。由于网络爬虫的爬取任务拥塞主要是由于从目录页面中提取到的页面链接过多造成的,因此本专利技术将目录页面的任务放置在已保存待爬取页面的任务的任务队列尾部,使得爬虫首先爬取能够提供有效信息的内容页面,延迟爬取造成拥塞的目录页面,从而有效降低待爬取页面的增长速度,缓解爬取任务拥塞的情况。上述说明仅是本专利技术技术方案的概述,为了能够更清楚了解本专利技术的技术手段,而可依照说明书的内容予以实施,并且为了让本专利技术的上述和其它目的、特征和优点能够更明显易懂,以下特举本专利技术的具体实施方式。附图说明通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本专利技术的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:图1示出了本专利技术实施例提供的一种网络爬虫的处理方法的流程图;图2示出了本专利技术实施例提供的一种网络爬虫的处理装置的组成框图;图3示出了本专利技术实施例提供的另一种网络爬虫的处理装置的组成框图。具体实施方式下面将参照附图更加详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。由于网络爬虫是通过页面链接来爬取页面信息的,网络爬虫从网站的某一个页面(通常是首页)开始,读取网页的内容,找到在网页中的其他链接地址,然后通过这些链接地址寻找下一个网页。因此,爬虫在爬取过程中经常会遇到由于页面链接过多,爬取任务呈现指数级增长的情况。在这种情况下,如果爬虫的爬取能力不足,就会造成爬虫任务的拥塞,从而影响到整个网络爬虫的效率。由于网络爬虫的运行具有上述特点,因此在网络爬虫的运行过程中经常会出现爬取任务拥塞的问题。为了解决上述问题,本专利技术实施例提供了一种网络爬虫的处理方法,如图1所示,该方法包括:101、判断待爬取页面的类型。由于网络爬虫在爬取网络信息时需要爬取大量的页面,在爬取的大量页面中,某些页面是爬虫爬取的最终目标,包含爬虫需要爬取的有效信息,这些页面在本专利技术实施例中被称为内容页面;而另外一些页面不是爬虫爬取的最终目标,爬虫只是从这些页面中获取通向其他页面的链接,这些页面在本专利技术实施例中被称为目录页面。由于目录页面中包含有通向其他页面的链接,因此当爬虫大量的爬取目录页面后,就会获取到数量过多的页面链接,从而使得爬虫的爬取任务呈现指数级增长,造成爬取任务拥塞的情况发生。为了避免爬虫大量的爬取目录页面,在爬取页面时就需要确定待爬取页面的类型。因此,本专利技术实施例需要执行步骤101判断待爬取页面的类型。其中,待爬取页面的类型包括:内容页面和目录页面。102、将所述待爬取页面的任务以先进先出的处理顺序保存在任务队列中。当通过步骤101判断待爬取页面的类型之后,就需要将待爬取页面的任务进行保存,以便后续从保存记录中获取待爬取页面的任务进行页面信息的爬取。由于保存记录中的待爬取页面数量很大,为了避免从保存记录中获取待爬取页面的任务出现混乱,因此需要按照预设的规则进行保存,本专利技术实施例对待爬取页面的任务进行保存的规则是为了后续能够有序处理保存记录中的待爬取页面的任务,因此本专利技术实施例在步骤101之后,还需要执行步骤102将所述待爬取页面的任务以先进先出的处理顺序保存在任务队列中。103、当确定爬取任务拥塞时对任务队列进行整理,将类型为目录页面的待爬取页面的任务放置在所述任务队列的队列尾部。当在步骤102中将待爬取页面的任务进行保存之后,就可以从任务队列中按照设定的处理顺序爬取页面。由于任务队列中存在类型为内容页面的待爬取页面的任务和类型为目录页面的待爬取页面的任务,而目录页面中包含有通向其他页面的链接,因此当爬虫大量的爬取类型为目录页面的待爬取页面的任务后,就会使得爬虫的爬取任务呈现指数级增长,造成爬取任务拥塞的情况发生。因此当确定爬取任务拥塞时,本专利技术实施例需要执行步骤103对任务队列进行整理,将类型为目录页面的待爬取页面的任务放置在所述任务队列的队列尾部。由于在本专利技术实施例中,爬虫是从任务队列中按照待爬取页面的任务的先进先出的顺序进行处理的,因此将类型为目录页面的待爬取页面的任务放置在任务队列的队列尾部,能够使得造成爬取任务拥塞的目录页面被延迟爬取,有效降低了待爬取页面增长的速度,缓解爬取任务拥塞的情况。本发本文档来自技高网...

【技术保护点】
一种网络爬虫的处理方法,其特征在于,所述方法包括:判断待爬取页面的类型,所述待爬取页面的类型包括:内容页面和目录页面;将所述待爬取页面的任务以先进先出的处理顺序保存在任务队列中;当确定爬取任务拥塞时对所述任务队列进行整理,将类型为目录页面的待爬取页面的任务放置在所述任务队列的队列尾部。

【技术特征摘要】
1.一种网络爬虫的处理方法,其特征在于,所述方法包括:判断待爬取页面的类型,所述待爬取页面的类型包括:内容页面和目录页面;将所述待爬取页面的任务以先进先出的处理顺序保存在任务队列中;当确定爬取任务拥塞时对所述任务队列进行整理,将类型为目录页面的待爬取页面的任务放置在所述任务队列的队列尾部。2.根据权利要求1所述的方法,其特征在于,所述判断待爬取页面的类型包括:确定待爬取页面中提取的页面链接的类型,所述页面链接的类型包括:内容页面链接和目录页面链接;根据提取的页面链接的类型确定所述页面链接对应的待爬取页面的类型。3.根据权利要求2所述的方法,其特征在于,所述确定待爬取页面中提取的页面链接的类型包括:通过检测提取的页面链接的格式将提取的页面链接分为内容页面链接或目录页面链接;或者,根据预设的链接规则将提取的页面链接分为内容页面链接或目录页面链接,所述预设的链接规则为爬虫解析各个页面时确定各个页面的类型,记录各个页面的链接格式,并从记录的内容页面的链接格式以及目录页面的链接格式中分别提取出对应的链接规则。4.根据权利要求1所述的方法,其特征在于,所述方法还包括:当确定爬取任务拥塞解除时,停止对所述任务队列进行整理。5.根据权利要求4所述的方法,其特征在于,确定爬取任务是否拥塞包括:检测待爬取页面的增长速度以及消耗速度;当增长速度大于消耗速度并且当前待爬取页面的总数大于第一预设阈值时,确定爬取任务拥塞;当消耗速度大于增长速度并且当前待爬取页面的总数小于第二预设阈值时,确定爬取任务拥塞解除。6.一种网络爬虫的处理...

【专利技术属性】
技术研发人员:李可欣崔志伸
申请(专利权)人:北京国双科技有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1