一种动态网页的页面数据采集方法
【技术领域】
[0001]本发明涉及大数据技术领域,具体地说是一种实用性强、动态网页的页面数据采集方法。
【背景技术】
[0002]当前,随着网络技术的快速发展,互联网上嵌有JavaScript脚本的动态页面所占比例越来越大,给页面数据采集工作带来了很大困难。在网络舆论及搜索引擎研宄方面,虽然页面数据采集的主要对象仍然为静态页面,但对动态页面中的数据进行采集的需求越来越迫切了。
[0003]传统的数据采集方法,只能获取网页中的静态数据,针对一些动态、实时改变的数据是无能为力的,使用传统的采集方法,不仅浪费了大量的人力和时间,而且采集效果和数据质量也很差。
[0004]基于此,现提供一种动态网页的页面数据采集方法,该方法通过Nutch完成数据采集过程,Nutch是一个开源Java实现的搜索引擎。它提供了我们运行自己的搜索引擎所需的全部工具。包括全文搜索和Web爬虫。Nutch是一个开源Java实现的搜索引擎,利用Nutch网络爬虫技术,构建动态页面自动解析任务,可以有效的解决传统html页面采集技术的缺点,提高采集效率和采集成本。
【发明内容】
[0005]本发明的技术任务是针对以上不足之处,提供一种实用性强、动态网页的页面数据采集方法。
[0006]一种动态网页的页面数据采集方法,其具体实现过程为:使用脚本解析环境并将其嵌入到分布式网络爬虫中,通过该网络爬虫的数据挖掘、索引和搜索功能,实现动态页面的数据采集。
[0007]所述动态页面数据采集挖掘过程为:
首先创建原始URL列表,注入原始的URL ;
生成抓取列表,并通过网络在网页抓取数据;
通过解析器解析采集到的网页数据内容,获取相关的页面信息;
提取解析出的URL连接,并对URL库进行更新,完成数据采集挖掘过程;
索引过程为:
反向索引采集的网页,删除冗余的内容及URL ;
将小的索引合成大的索引,并建立索引库;
搜索过程为:
用户通过搜索引擎提供的交互界面发出搜索请求;
搜索引擎完成搜索过程后,将结果反馈给用户。
[0008]所述原始URL为空的URL库,注入的原始URL为起始的根URL。
[0009]所述抓取列表生成及抓取过程为:根据URL库在新创建的segment目录中生成fetchlist,存放待采集的URL ;按照fetchlist中的URL信息从网络上进行相关网页数据的采集工作。
[0010]所述搜索引擎为Nutch结构,该Nutch结构包括数据采集部分、索引部分和搜索部分,其中:
数据采集部分负责网页数据的抓取,解析网页并根据获取的URL连接信息进入下一轮页面数据的抓取工作;
索引部分将采集回来的采集数据做成反向索引来搜索;
搜索部分根据Nutch提供的用户接口的输入数据搜索查找相关数据。
[0011]当用户发出搜索请求时,Nutch将该搜索请求转换为Lucence查询请求,并将结果反馈给用户。
[0012]本发明的一种动态网页的页面数据采集方法,具有以下优点:
该发明的一种动态网页的页面数据采集方法将各种各样的动态数据以完整的形态采集下来,存入数据库当中,方便我们实时了解互联网动态,避免采集数据不准确、不及时的状况,弥补了传统的采集方法中采集页面只采集一遍而且不根据需求采集的缺点,极大的提高了采集的准确度和采集效率,实用性强,适用范围广泛,易于推广。
【附图说明】
[0013]附图1为本发明的实现示意图。
【具体实施方式】
[0014]下面结合附图和具体实施例对本发明作进一步说明。
[0015]为解决现有技术中无法采集网页中的动态数据或者网页中动态数据采集率偏低、采集成本很高的问题,本发明的提供一种动态网页的页面数据采集方法,本发明主要是针对互联网上越来越多的动态数据,如新闻数据、BBS数据和网络舆情数据等,进行动态抓取的过程。该方案将脚本解析环境嵌入到分布式网络爬虫中,实现了动态页面的数据采集。利用完善的Nutch数据挖掘和索引功能,修正操作步骤,达到我们高效抓取动态数据的目的。
[0016]如附图1所示,其具体实现过程为:使用脚本解析环境并将其嵌入到分布式网络爬虫中,通过该网络爬虫的数据挖掘、索引和搜索功能,实现动态页面的数据采集。
[0017]所述动态页面数据采集挖掘过程为:
首先创建原始URL列表,注入原始的URL ;
生成抓取列表,并通过网络在网页抓取数据;
通过解析器解析采集到的网页数据内容,获取相关的页面信息;
提取解析出的URL连接,并对URL库进行更新,完成数据采集挖掘过程;
重复上述步骤,一直达到指定深度为止。
[0018]索引过程为:
反向索引采集的网页,删除冗余的内容及URL ;
将小的索引合成大的索引,并建立索引库;
搜索过程为: 用户通过搜索引擎提供的交互界面发出搜索请求;
搜索引擎完成搜索过程后,将结果反馈给用户。
[0019]所述原始URL为空的URL库,注入的原始URL为起始的根URL。
[0020]所述抓取列表生成及抓取过程为:根据URL库在新创建的segment目录中生成fetchlist,存放待采集的URL ;按照fetchlist中的URL信息从网络上进行相关网页数据的采集工作。
[0021]所述搜索引擎为Nutch结构,该Nutch结构包括数据采集部分、索引部分和搜索部分,其中:
数据采集部分负责网页数据的抓取,解析网页并根据获取的URL连接信息进入下一轮页面数据的抓取工作;
索引部分将采集回来的采集数据做成反向索引来搜索;
搜索部分根据Nutch提供的用户接口的输入数据搜索查找相关数据。
[0022]当用户发出搜索请求时,Nutch将该搜索请求转换为Lucence查询请求,并将结果反馈给用户。
[0023]上述【具体实施方式】仅是本发明的具体个案,本发明的专利保护范围包括但不限于上述【具体实施方式】,任何符合本发明的一种动态网页的页面数据采集方法的权利要求书的且任何所属技术领域的普通技术人员对其所做的适当变化或替换,皆应落入本发明的专利保护范围。
【主权项】
1.一种动态网页的页面数据采集方法,其特征在于,其具体实现过程为:使用脚本解析环境并将其嵌入到分布式网络爬虫中,通过该网络爬虫的数据挖掘、索引和搜索功能,实现动态页面的数据采集。2.根据权利要求1所述的一种动态网页的页面数据采集方法,其特征在于,所述动态页面数据采集挖掘过程为: 首先创建原始URL列表,注入原始的URL ; 生成抓取列表,并通过网络在网页抓取数据; 通过解析器解析采集到的网页数据内容,获取相关的页面信息; 提取解析出的URL连接,并对URL库进行更新,完成数据采集挖掘过程; 索引过程为: 反向索引采集的网页,删除冗余的内容及URL ; 将小的索引合成大的索引,并建立索引库; 搜索过程为: 用户通过搜索引擎提供的交互界面发出搜索请求; 搜索引擎完成搜索过程后,将结果反馈给用户。3.根据权利要求2所述的一种动态网页的页面数据采集方法,其特征在于,所述原始URL为空的URL库,注入的原始URL为起始的根URL。4.根据权利要求2所述的一种动态网页的页面数据采集方法,其特征在于,所述抓取列表生成及抓取过程为:根据URL库在新创建的segment目录中生成fetchlist,存放待采集的URL ;按照fetchlist中的URL信息从网络上进行相关网页数据的采集工作。5.根据权利要求2所述的一种动态网页的页面数据采集方法,其特征在于,所述搜索引擎为Nutch结构,该Nutch结构包括数据采集部分、索引部分和搜索部分,其中: 数据采集部分负责网页数据的抓取,解析网页并根据获取的URL连接信息进入下一轮页面数据的抓取工作; 索引部分将采集回来的采集数据做成反向索引来搜索; 搜索部分根据Nutch提供的用户接口的输入数据搜索查找相关数据。6.根据权利要求5所述的一种动态网页的页面数据采集方法,其特征在于,当用户发出搜索请求时,Nutch将该搜索请求转换为Lucence查询请求,并将结果反馈给用户。
【专利摘要】本发明公开了一种动态网页的页面数据采集方法,其具体实现过程为:使用脚本解析环境并将其嵌入到分布式网络爬虫中,通过该网络爬虫的数据挖掘、索引和搜索功能,实现动态页面的数据采集。该一种动态网页的页面数据采集方法与现有技术相比,将各种各样的动态数据以完整的形态采集下来,存入数据库当中,方便我们实时了解互联网动态,避免采集数据不准确、不及时的状况,弥补了传统的采集方法中采集页面只采集一遍而且不根据需求采集的缺点,极大的提高了采集的准确度和采集效率,实用性强,适用范围广泛,易于推广。
【IPC分类】G06F17/30
【公开号】CN104991904
【申请号】CN201510332025
【发明人】焦毓葳, 崔乐乐, 王贵友
【申请人】浪潮软件集团有限公司
【公开日】2015年10月21日
【申请日】2015年6月16日