一种爬虫的爬取方法及装置制造方法及图纸

技术编号:21914091 阅读:28 留言:0更新日期:2019-08-21 12:28
本发明专利技术公开了一种爬虫的爬取方法及装置,涉及计算机技术领域,主要目的在于使得爬虫爬取到的数据能够覆盖更多的页面层级,本发明专利技术的主要技术方案为:获取待爬取的同一层级下每个页面对应的所有URL链接;从每个所述页面对应的所有URL链接中提取出预设数量的URL链接,并放入待爬取队列;以所述待爬取队列中的URL链接作为入口,对所述URL链接对应页面中的页面内容进行爬取。本发明专利技术主要用于页面中URL链接的爬取。

A crawling method and device for reptiles

【技术实现步骤摘要】
一种爬虫的爬取方法及装置
本专利技术涉及计算机
,尤其涉及一种爬虫的爬取方法及装置。
技术介绍
随着云计算和大数据技术的深入发展,网页上的大量结构化和非结构化的信息搜索与挖掘技术成为一个热点研究问题。在分析数据时往往会花费大量的时间和精力,在大数据时代,爬虫技术成为获取网络数据的重要方式。爬虫技术是通过网页的链接地址来寻找网页,从网站某一个页面开始,读取网页的内容,找到在网页中的其它链接地址,然后通过这些链接地址寻找下一个网页,这样一直循环下去。当爬虫在爬取一个网站的所有页面时,一般会采用广度优先算法,即从一个入口页开始,抓取到该入口页的所有链接,作为第一层,然后从所有链接中的每一个链接出发,获取该链接对应页面下的所有链接,作为第二层,以此类推,一层一层爬取下去,直到没有新的链接产生为止。在很多情况下,由于页面过多,会对爬取到的页面数量或者页面层数进行限制,进而控制爬虫的爬取时间,如只爬取前两层的页面或者只爬取前100万个页面,然而,上述爬虫的爬取方法无法抓取到更多层级的数据,使得在一定时间内爬取到的数据受限,并不能覆盖真实网站的各个成分,也无法满足很多应用场景的数据需求,造成很多应用场景下信息的缺失。
技术实现思路
有鉴于此,本专利技术提供一种爬虫的爬取方法及装置,主要目的在于使得爬虫爬取到的数据能够覆盖更多的页面层级。为了解决上述问题,本专利技术主要提供如下技术方案:一方面,本专利技术实施例提供了一种爬虫的爬取方法,包括:获取待爬取的同一层级下每个页面对应的所有URL链接;从每个所述页面对应的所有URL链接中提取出预设数量的URL链接,并放入待爬取队列;以所述待爬取队列中的URL链接作为入口,对所述URL链接对应页面中的页面内容进行爬取。进一步地,所述从每个所述页面对应的所有URL链接中提取出预设数量的URL链接,并放入待爬取队列包括:分别从每个所述页面对应的所有URL链接中提取出相同预设数量的URL链接,并放入待爬取队列;或对不同类型页面设置权重值,分别从每个所述页面对应的所有URL链接中提取出与该页面类型对应的权重值相匹配的预设数量的URL链接,并放入待爬取队列。进一步地,在所述获取待爬取的同一层级下每个页面对应的所有URL链接之后,所述方法还包括:获取所述URL链接对应的页面的标识信息;根据所述标识信息建立不同页面对应的爬取目录;将每个所述页面对应的所有URL链接放入该页面对应的爬取目录中,以及所述从每个所述页面对应的所有URL链接中提取出预设数量的URL链接,并放入待爬取队列包括:从每个所述页面对应的爬取目录中提取出预设数量的URL链接,并放入待爬取队列。进一步地,在所述从每个所述页面对应的爬取目录中提取出预设数量的URL链接之前,所述方法还包括:按照预设时间间隔遍历查询每个所述页面对应的爬取目录;获取所述页面对应的爬取目录中存储的URL链接数量。进一步地,所述从每个所述页面对应的爬取目录中提取出预设数量的URL链接包括:当爬取目录中所述URL链接数量小于预设数量时,从所述页面对应的爬取目录中提取全部的URL链接;当爬取目录中所述URL链接数量大于或等于预设数量时,从所述页面对应的爬取目录中提取预设数量的URL链接。进一步地,在所述以所述待爬取队列中的URL链接作为入口,对所述URL链接对应页面中的页面内容进行爬取之后,所述方法还包括:设置爬虫爬取页面中URL链接的结束条件,当达到所述结束条件时,结束爬虫的爬取操作。为了实现上述目的,根据本专利技术的另一方面,提供了一种存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行上述所述的爬虫的爬取方法。为了实现上述目的,根据本专利技术的另一方面,提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行上述所述的爬虫的爬取方法。另一方面,本专利技术实施例还提供了一种爬虫的爬取装置,包括:第一获取单元,用于获取待爬取的同一层级下每个页面对应的所有URL链接;提取单元,用于从每个所述页面对应的所有URL链接中提取出预设数量的URL链接,并放入待爬取队列;爬取单元,用于以所述待爬取队列中的URL链接作为入口,对所述URL链接对应页面中的页面内容进行爬取。进一步地,所述提取单元,具体用于分别从每个所述页面对应的所有URL链接中提取出相同预设数量的URL链接,并放入待爬取队列;或对不同类型页面设置权重值,分别从每个所述页面对应的所有URL链接中提取出与该页面类型对应的权重值相匹配的预设数量的URL链接,并放入待爬取队列。进一步地,所述装置还包括:第二获取单元,用于获取所述URL链接对应的页面的标识信息;建立单元,用于根据所述标识信息建立不同页面对应的爬取目录;存储单元,用于将每个所述页面对应的所有URL链接放入该页面对应的爬取目录中,以及所述提取单元,具体用于从每个所述页面对应的爬取目录中提取出预设数量的URL链接,并放入待爬取队列。进一步地,所述装置还包括:查询单元,用于按照预设时间间隔遍历查询每个所述页面对应的爬取目录;第三获取单元,用于获取所述页面对应的爬取目录中存储的URL链接数量。进一步地,所述提取单元,具体还用于当爬取目录中所述URL链接数量小于预设数量时,从所述页面对应的爬取目录中提取全部的URL链接;所述提取单元,具体还用于当爬取目录中所述URL链接数量大于或等于预设数量时,从所述页面对应的爬取目录中提取预设数量的URL链接。进一步地,所述装置还包括:结束单元,用于设置爬虫爬取页面中URL链接的结束条件,当达到所述结束条件时,结束爬虫的爬取操作。借由上述技术方案,本专利技术实施例提供的技术方案至少具有下列优点:本专利技术实施例提供的一种爬虫的爬取方法及装置,通过获取待爬取的同一级层下每个页面对应的所有URL链接,进一步从每个页面对应的所有URL链接中提取预设数量的URL链接,将预设数量的URL链接放入待爬取队列,使得待爬取队列中的URL链接能够覆盖更多页面层级,最后以待爬取队列中的URL链接为入口,对URL链接对应页面中的页面内容进行爬取。与现有技术中采用广度优先算法进行页面爬取的方法相比,本专利技术实施例通过在爬虫爬取页面中URL链接的过程中,并非直接将爬虫实时爬取到的页面中的URL链接放入待爬取队列,而是从不同页面爬取到的URL链接中提取预设数量的URL链接后在放入待爬取队列,使得待爬取队列中包含有更多层级的URL链接,保证了待爬取队列中URL的范围覆盖到的页面数据更广,覆盖到网站的各个成分,并且在整个爬取过程中会不断建立新的爬取目录,从新的爬取目录中提取URL链接放入待爬取队列,爬取到了更多应用场景下的数据信息,为后续的网站分析提供了更具有参考价值的数据。上述说明仅是本专利技术技术方案的概述,为了能够更清楚了解本专利技术的技术手段,而可依照说明书的内容予以实施,并且为了让本专利技术的上述和其它目的、特征和优点能够更明显易懂,以下特举本专利技术的具体实施方式。附图说明通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本专利技术的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:图1为本专利技术实施例提供的一种爬虫的爬取方法流程图;图2本文档来自技高网...

【技术保护点】
1.一种爬虫的爬取方法,其特征在于,包括:获取待爬取的同一层级下每个页面对应的所有URL链接;从每个所述页面对应的所有URL链接中提取出预设数量的URL链接,并放入待爬取队列;以所述待爬取队列中的URL链接作为入口,对所述URL链接对应页面中的页面内容进行爬取。

【技术特征摘要】
1.一种爬虫的爬取方法,其特征在于,包括:获取待爬取的同一层级下每个页面对应的所有URL链接;从每个所述页面对应的所有URL链接中提取出预设数量的URL链接,并放入待爬取队列;以所述待爬取队列中的URL链接作为入口,对所述URL链接对应页面中的页面内容进行爬取。2.根据权利要求1所述的方法,其特征在于,所述从每个所述页面对应的所有URL链接中提取出预设数量的URL链接,并放入待爬取队列包括:分别从每个所述页面对应的所有URL链接中提取出相同预设数量的URL链接,并放入待爬取队列;或对不同类型页面设置权重值,分别从每个所述页面对应的所有URL链接中提取出与该页面类型对应的权重值相匹配的预设数量的URL链接,并放入待爬取队列。3.根据权利要求1所述的方法,其特征在于,在所述获取待爬取的同一层级下每个页面对应的所有URL链接之后,所述方法还包括:获取所述URL链接对应的页面的标识信息;根据所述标识信息建立不同页面对应的爬取目录;将每个所述页面对应的所有URL链接放入该页面对应的爬取目录中,以及所述从每个所述页面对应的所有URL链接中提取出预设数量的URL链接,并放入待爬取队列包括:从每个所述页面对应的爬取目录中提取出预设数量的URL链接,并放入待爬取队列。4.根据权利要求3所述的方法,其特征在于,在所述从每个所述页面对应的爬取目录中提取出预设数量的URL链接之前,所述方法还包括:按照预设时间间隔遍历查询每个所述页面对应的爬取目录;获取所述页面对应的爬取目录中存储的URL链接数量。5.根据权利要求4所述的方法,其特征在于,所述从每个所述页面对应的爬取目录中提取...

【专利技术属性】
技术研发人员:何熠皓
申请(专利权)人:北京国双科技有限公司
类型:发明
国别省市:北京,11

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

1