网页数据的下载方法及装置制造方法及图纸

技术编号:11371579 阅读:69 留言:0更新日期:2015-04-30 04:57
本公开是关于一种网页数据的下载方法及装置,属于互联网技术领域。所述方法包括:获取待抓取网页数据的一级网址;从一级网址的网页数据中,提取多个二级网址,一级网址的网页数据中包含多个二级网址及干扰数据;将多个二级网址加入第一消息队列;基于第一消息队列,下载二级网址对应的网页数据。本公开在获取到待抓取网页数据的一级网址后,从一级网址的网页数据中,提取多个二级网址,并将多个二级网址加入第一消息队列,进而基于第一消息队列,下载二级网址对应的网页数据。由于借助消息队列下载网页数据,无需获知地址端口等配置信息,基于消息队列中存储的二级网址下载,因此,降低了资源消耗,简化了下载的复杂度。

【技术实现步骤摘要】
网页数据的下载方法及装置
本公开涉及互联网
,尤其涉及一种网页数据的下载方法及装置。
技术介绍
随着互联网技术的发展,互联网上的数据爆炸性增长。传统的单机网络爬虫系统因获取网页数据的速度较慢、准确性较低,很难适应大规模的网页数据获取需求。为了提高获取速度以及准确性,分布式网络爬虫系统应运而生。分布式网络爬虫系统作为一种新的数据获取系统,具有单机网络爬虫系统无法比拟的数据采集速度和规模,可快速地为抓取到更多的网页数据。分布式网络爬虫系统由调度器和多个下载器组成,其中,调度器负责为各个下载器分配待下载网址,下载器用于根据待下载网址从互联网上下载网页数据。在分布式网络爬虫系统中,调度器和下载器间采用RPC(RemoteProcedureCall,远程过程调度)协议进行通信。基于分布式网络爬虫系统,相关技术在下载网页数据时,调度器和下载器需要先获知彼此的地址端口等配置信息,然后调度器根据待下载网址的数量,确定为各个下载器分配的待下载网址,进而通过各个下载器的地址端口将待下载地址发送至各个下载器,基于接收到的下载网址,下载器就可从互联网上下载网页数据。
技术实现思路
为克服相关技术中存在的问题,本公开提供一种网页数据的下载方法及装置。根据本公开实施例的第一方面,提供一种网页数据的下载方法,该方法包括:获取待抓取网页数据的一级网址;从所述一级网址的网页数据中,提取多个二级网址,所述一级网址的网页数据中包含多个二级网址及干扰数据;将所述多个二级网址加入第一消息队列;基于所述第一消息队列,下载二级网址对应的网页数据。结合第一方面,在第一方面的第一种可能的实现方式中,所述基于所述第一消息队列,下载二级网址对应的网页数据,包括:根据所述第一消息队列中的二级网址数量及各个下载实例的属性信息,为各个下载实例分配二级网址,所述属性信息包括下载实例的数量及下载实例的下载状态;基于分配的二级网址,通过各个下载实例下载二级网址对应的网页数据。结合第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,所述根据所述第一消息队列中的二级网址数量及各个下载实例的属性信息,为各个下载实例分配二级网址,包括:根据所述第一消息队列中的二级网址数量及下载实例的数量,将所述第一消息队列中的二级网址平均分配给各个下载实例;或,根据各个下载实例的下载状态,确定各个下载实例的下载优先级,按照各个下载实例的下载优先级,将所述第一消息队列中的二级网址,分配给各个下载实例。结合第一方面,在第一方面的第三种可能的实现方式中,所述基于所述第一消息队列,下载二级网址对应的网页数据之后,还包括:将下载得到的网页数据加入第二消息队列;从所述第二消息队列中,获取下载得到的网页数据;从所述下载得到的网页数据中,提取指定数据;根据所述指定数据的数据类型,对所述指定数据进行处理。结合第一方面的第三种可能的实现方式,在第一方面的第四种可能的实现方式中,所述从所述下载得到的网页数据中,提取指定数据,包括:根据预先设置的提取条件,从所述下载得到的网页数据中,提取指定数据。结合第一方面的第四种可能的实现方式,在第一方面的第五种可能的实现方式中,所述根据预先设置的提取条件,从所述下载得到的网页数据中,提取指定数据,包括:根据预设关键字,从所述下载得到的网页数据中,提取包含所述预设关键字的指定数据;或;根据预设提取段落,从所述下载得到的网页数据中,提取位于所述预设提取段落上的指定数据。结合第一方面的第三种可能的实现方式,在第一方面的第六种可能的实现方式中,所述根据所述指定数据的数据类型,对所述指定数据进行处理,包括:当所述指定数据的数据类型为解析数据,存储所述指定数据;当所述指定数据的数据类型为网址数据,将所述指定数据加入到所述第一消息队列。根据本公开实施例的第二方面,提供一种网页数据的下载装置,该装置包括:第一获取模块,用于获取待抓取网页数据的一级网址;第一提取模块,用于从所述一级网址的网页数据中,提取多个二级网址,所述一级网址的网页数据中包含多个二级网址及干扰数据;第一加入模块,用于将所述多个二级网址加入第一消息队列;下载模块,用于基于所述第一消息队列,下载二级网址对应的网页数据。结合第二方面,在第二方面的第一种可能的实现方式中,所述下载模块,用于根据所述第一消息队列中的二级网址数量及各个下载实例的属性信息,为各个下载实例分配二级网址,所述属性信息包括下载实例的数量及下载实例的下载状态;基于分配的二级网址,通过各个下载实例下载二级网址对应的网页数据。结合第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式中,所述下载模块,具体用于根据所述第一消息队列中的二级网址数量及下载实例的数量,将所述第一消息队列中的二级网址平均分配给各个下载实例;或,所述下载模块,具体用于根据各个下载实例的下载状态,确定各个下载实例的下载优先级,按照各个下载实例的下载优先级,将所述第一消息队列中的二级网址,分配给各个下载实例。结合第二方面,在第二方面的第三种可能的实现方式中,所述装置,还包括:第二加入模块,用于将下载得到的网页数据加入第二消息队列;第二获取模块,用于从所述第二消息队列中,获取下载得到的网页数据;第二提取模块,用于从所述下载得到的网页数据中,提取指定数据;处理模块,用于根据所述指定数据的数据类型,对所述指定数据进行处理。结合第二方面的第三种可能的实现方式,在第二方面的第四种可能的实现方式中,所述第二提取模块,用于根据预先设置的提取条件,从所述下载得到的网页数据中,提取指定数据。结合第二方面的第四种可能的实现方式,在第二方面的第五种可能的实现方式中,所述第二提取模块,具体用于根据预设关键字,从所述下载得到的网页数据中,提取包含所述预设关键字的指定数据;或;所述第二提取模块,具体用于根据预设提取段落,从所述下载得到的网页数据中,提取位于所述预设提取段落上的指定数据。结合第二方面的第三种可能的实现方式,在第二方面的第六种可能的实现方式中,所述处理模块,用于当所述指定数据的数据类型为解析数据,存储所述指定数据;当所述指定数据的数据类型为网址数据,将所述指定数据加入到所述第一消息队列。根据本公开实施例的第三方面,提供一种网页数据的下载装置,包括:处理器;用于存储处理器可执行的指令;其中,所述处理器被配置为:获取待抓取网页数据的一级网址;从所述一级网址的网页数据中,提取多个二级网址,所述一级网址的网页数据中包含多个二级网址及干扰数据;将所述多个二级网址加入第一消息队列;基于所述第一消息队列,下载二级网址对应的网页数据。本公开的实施例提供的技术方案可以包括以下有益效果:在获取到待抓取网页数据的一级网址后,从一级网址的网页数据中,提取多个二级网址,并将多个二级网址加入第一消息队列,进而基于第一消息队列,下载二级网址对应的网页数据。由于借助消息队列下载网页数据,无需获知地址端口等配置信息,基于消息队列中存储的二级网址下载即可,因此,降低了资源消耗,简化了下载的复杂度。应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。附图说明此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本专利技术的实施例,并与说明书一起用于解释本专利技术的原理。图1是根据一本文档来自技高网...

【技术保护点】
一种网页数据的下载方法,其特征在于,所述方法包括:获取待抓取网页数据的一级网址;从所述一级网址的网页数据中,提取多个二级网址,所述一级网址的网页数据中包含多个二级网址及干扰数据;将所述多个二级网址加入第一消息队列;基于所述第一消息队列,下载二级网址对应的网页数据。

【技术特征摘要】
1.一种网页数据的下载方法,其特征在于,所述方法包括:获取待抓取网页数据的一级网址;从所述一级网址的网页数据中,提取多个二级网址,所述一级网址的网页数据中包含多个二级网址及干扰数据;将所述多个二级网址加入第一消息队列;基于所述第一消息队列,下载二级网址对应的网页数据;将下载得到的二级网址对应的网页数据加入第二消息队列;从所述第二消息队列中,获取下载得到的网页数据;从所述下载得到的网页数据中,提取指定数据;根据所述指定数据的数据类型,对所述指定数据进行处理,所述根据所述指定数据的数据类型,对所述指定数据进行处理,包括:当所述指定数据的数据类型为解析数据,存储所述指定数据;当所述指定数据的数据类型为网址数据,将所述指定数据加入到所述第一消息队列。2.根据权利要求1所述的方法,其特征在于,所述基于所述第一消息队列,下载二级网址对应的网页数据,包括:根据所述第一消息队列中的二级网址数量及各个下载实例的属性信息,为各个下载实例分配二级网址,所述属性信息包括下载实例的数量及下载实例的下载状态;基于分配的二级网址,通过各个下载实例下载二级网址对应的网页数据。3.根据权利要求2所述的方法,其特征在于,所述根据所述第一消息队列中的二级网址数量及各个下载实例的属性信息,为各个下载实例分配二级网址,包括:根据所述第一消息队列中的二级网址数量及下载实例的数量,将所述第一消息队列中的二级网址平均分配给各个下载实例;或,根据各个下载实例的下载状态,确定各个下载实例的下载优先级,按照各个下载实例的下载优先级,将所述第一消息队列中的二级网址,分配给各个下载实例。4.根据权利要求1所述的方法,其特征在于,所述从所述下载得到的网页数据中,提取指定数据,包括:根据预先设置的提取条件,从所述下载得到的网页数据中,提取指定数据。5.根据权利要求4所述的方法,其特征在于,所述根据预先设置的提取条件,从所述下载得到的网页数据中,提取指定数据,包括:根据预设关键字,从所述下载得到的网页数据中,提取包含所述预设关键字的指定数据;或;根据预设提取段落,从所述下载得到的网页数据中,提取位于所述预设提取段落上的指定数据。6.一种网页数据的下载装置,其特征在于,所述装置包括:第一获取模块,用于获取待抓取网页数据的一级网址;第一提取模块,用于从所述一级网址的网页数据中,提取多个二级网址,所述一级网址的网页数据中包含多个二级网址及干扰数据;第一加入模块,用于将所述多个二级网址加入第一消息队列;下载模块,用于基于所述第一消息队列,下载二级网址对应...

【专利技术属性】
技术研发人员:于胜军马哲谭国斌
申请(专利权)人:小米科技有限责任公司
类型:发明
国别省市:北京;11

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

1