一种分布式互联网数据快速采集系统及采集方法与流程

文档序号:12177260阅读:3957来源:国知局
一种分布式互联网数据快速采集系统及采集方法与流程

本发明属于互联网大数据的采集技术领域,具体涉及一种分布式互联网数据快速采集系统及采集方法。



背景技术:

互联网的飞速发展将社会带入数据高度发达且公开的信息时代,大数据时代已然来临。数据对于企业经营、政府决策及社会动态分析等具有极其重要的作用,而如何大规模、快速采集数据成为技术焦点,但从现有技术方案来看,数据采集方法有待改进。传统的互联网数据采集主要以网络爬虫为主要工具,以结构化或半结构化文本数据为对象进行数据收集。网络爬虫是按照一定规则自动游走爬取互联网文本网页的程序或者脚本。文本数据大多嵌套于网页程序代码中。数据采集的实时性直接决定数据的有效及时性,数据的快速采集成为重中之重。



技术实现要素:

有鉴于此,本发明针对数据采集量大、数据来源多和实时性低的问题,提供了一种分布式互联网数据快速采集系统及采集方法。

为了解决上述技术问题,本发明公开了一种分布式互联网数据快速采集系统,包括种子网站设置节点,超链接采集层,实时队列,网页下载与解析层,网页数据存储层五个层;

其中种子网站设置节点用于设置存储数据源的各项参数及抽取规则等,为单一节点;

其中超链接采集层用于对数据源的超链接列表网页进行请求并提取目标网页的超链接;

其中实时队列用于存取超链接采集层提取的URL超链接、该超链接对应的抽取规则及已访问过的URL超链接;

其中网页下载与解析层用于请求并解析实时队列中未访问过的URL超链接并格式化提取特定数据;

其中网页数据存储层用于存储网页下载与解析层格式化抽取的目标数据。

与现有技术相比,本发明可以获得包括以下技术效果:

1)本发明采集系统采用瀑布模式运行,实时性高,可扩展性强,面对数据来源多、数据采集量大的系统要求具有较强的应对能力。

2)本发明采用分布式分层协作的采集方式进行数据采集,能够应对数据来源多、数据采集量大、实时性高的系统要求,同时具有较高的可扩展性、可定制性的特点。数据抽取包括结构化精确抽取方案与通用正文抽取(只针对正文部分)两套抽取方案,提取数据有较高的完整性。

当然,实施本发明的任一产品并不一定需要同时达到以上所述的所有技术效果。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是本发明分布式互联网数据快速采集系统的结构图;

图2是本发明分布式互联网数据快速采集方法的流程图。

具体实施方式

以下将配合实施例来详细说明本发明的实施方式,藉此对本发明如何应用技术手段来解决技术问题并达成技术功效的实现过程能充分理解并据以实施。

本发明一种分布式互联网数据快速采集系统,如图1所示,包括种子网站设置节点,超链接采集层,实时队列,网页下载与解析层,网页数据存储层五个层,

其中种子网站设置节点用于设置存储数据源的各项参数及抽取规则等,为单一节点;种子网站设置节点使用的是关系型数据库。

其中超链接采集层用于对数据源的超链接列表网页进行请求并提取目标网页的超链接;超链接采集层由单个或者若干网络爬虫节点构成,这些网络爬虫彼此物理隔离、逻辑协作完成目标网页的超链接提取工作,根据数据源的规模可横向扩展。超链接采集层是分布式多节点的,可横向扩展的,单个节点的运行是定时的,该层节点将采集的超链接整合对应的抽取规则存入实时队列。

其中实时队列用于存取超链接采集层提取的URL超链接、该超链接对应的抽取规则及已访问过的URL超链接;实时队列是爬取操作节点协同合作的核心组件。该层具有很高的实时性,能够实现数据的实时存入、取出,具有持久化存储的能力,同时也对已采集的URL超链接起到过滤作用。实时队列是独立部署的,未访问过的超链接是实时存取的,已访问的超链接是持久存储的。

其中网页下载与解析层用于请求并解析实时队列中未访问过的URL超链接并格式化提取特定数据。网页下载与解析层类似超链接采集层由多个网络爬虫节点组成,节点间彼此独立工作,主要负责目标数据的结构化信息提取工作,根据超链接采集层提取的超链接规模可横向扩展。每个节点包括一套基于HTML文档树的信息结构化抽取方法与一套通用正文信息抽取方法,对于网页正文部分的抽取可切换使用。网页下载与解析层是分布式多节点的,可横向扩展的,单个节点的运行是实时的,节点读取实时队列中的超链接后进行过滤、解析、格式化抽取目标数据并存储操作。

其中网页数据存储层用于存储网页下载与解析层格式化抽取的目标数据。网页数据存储层采用开源大数据存储数据库实现,为多节点存储,对于存储网页文档数据具有很强的存储能力,存储量大,读取性能优良,可动态扩展节点数量。

一种基于分布式网络数据快速采集方法,基于上述分布式网络数据快速采集系统,如图2所示,具体步骤如下:

步骤1,种子网站设置节点设置所有种子URL、抽取规则、网站编码等信息;

用户通过web系统添加所有需要采集的目标网站,这些目标网站中包含用户感兴趣的多个目标版块如教育、民生等,然后进行如下设置:

第一步,设置的网站信息包括当前网站的域名、名称、类型、页面编码、该网站通用目标URL过滤正则表达式以及通用信息抽取规则(包括作者、发布时间、正文等),该网站当前设置的信息适用于该网站下所有采集版块;如表1所示:

表1网站设置表

第二步,设置网站的版块信息,包括版块的名称、种子URL,若版块的域名、目标URL过滤正则表达式及信息抽取规则与该网站的通用设置不同,则在对应的位置个性化设置该处信息。如网站设置的域名为http://newssc.org/,而版块的域名为http://edu.newssc.org/。若当前版块的某些信息与网站通用设置相同,则不必对该版块进行重复设置。如表2针对表1中的“网站1”设置其下属版块:

表2表1中的“网站1”版块设置表

步骤2,超链接采集层中的节点定时读取数据源信息并采集数据源特定列表页的URL,格式化后并同对应的结构化抽取规则存入实时队列;

超链接采集层中的节点定时读取步骤1设置的网站及版块信息,以版块为基本单位进行格式化处理,对于每一个采集版块该过程详细描述为:

第一步,继承当前版块所属网站的所有信息;

第二步,若域名、URL过滤正则表达、页面信息抽取规则(包括作者、发布时间、正文等)版块进行了设置,该版块将使用自身个性化设置替代从网站设置中继承来的相应设置信息,如表3所示:

表3版块格式化

第三步,请求版块种子URL页面,使用当前版块的URL过滤正则表达式提取目标网页的URL集合(每个版块采集得到一个URL集合);

第四步,以当前的每个URL集合中的单个元素为目标URL,使用当前版块设置的域名拼接完整的目标URL(因为在页面中目标URL可能以’/abc.html’或者‘./abc.html’方式存在,需拼接为完整的‘http://cul.china.com.cn/abc.html’形式)结合对应第二步中设置好的版块信息形成新的多元组,如:

通过版块1的种子URL(即S1)采集得到URL集合:

SET_1:(link_1,link_2,link_3………..link_m)

则存入队列的多元组为:

<link_1,版块1,网站1,GBK,1,规则1,规则2,规则3,(通用)规则4>

<link_2,版块1,网站1,GBK,1,规则1,规则2,规则3,(通用)规则4>

……………………………

<link_m,版块1,网站1,GBK,1,规则1,规则2,规则3,(通用)规则4>;

通过版块2的种子URL(S2)采集的URL集合:

SET2:(link_1,link_2,link_3………..link_n)

则存入队列的多元组:

<link_1,版块1,网站1,GBK,1,(通用)规则1,(通用)规则2,(通用)规则3,规则4>

……………………………

<link_n,版块1,网站1,GBK,1,(通用)规则1,(通用)规则2,(通用)规则3,规则4>。

多元组中的信息包括了该目标URL的页面编码、网站名称、版块名称、页面编码、标题抽取规则、作者抽取规则、正文抽取规则、发布时间抽取规则、网站类型等。最后将设置好的多元组压入实时队列中,这个过程将目标URL与抽取规则绑定,做到一一对应。

步骤3,网页下载与解析层中的节点实时读取实时队列中的网页超链接请求下载并结合伴随传递的抽取规则结构化提取数据,若正文数据提取成功则直接存入网页数据存储层中,否则采用通用正文抽取的方法进行正文提取,然后存入网页数据存储层中。

网页下载与解析层中的节点实时读取实时队列中通过步骤2设置好的多元组中,请求目标页面,对于请求成功的目标页面,采用多元组中的对应抽取规则对页面进行解析,对于非正文部分信息抽取,若规则为空或者采用当前规则抽取失效,则报出规则为空异常或者抽取失败异常并记录日志;对于正文抽取,若设置的正文抽取规则为空或者抽取失败,则采用通用正文抽取方法(作为备用抽取手段,非设置规则),若抽取失败则报出通用抽取失败异常并记录日志;若抽取成功,则将对应的数据以单条记录的方式存入数据存储层。

注意:本发明中使用的通用正文抽取方法(基于密度的正文抽取方法)已有公开论文,参见期刊:[1]朱泽德,李淼,张健,陈雷,曾新华.基于文本密度模型的Web正文抽取[J].模式识别与人工智能,2013,07:667-672.

上述说明示出并描述了发明的若干优选实施例,但如前所述,应当理解发明并非局限于本文所披露的形式,不应看作是对其他实施例的排除,而可用于各种其他组合、修改和环境,并能够在本文所述发明构想范围内,通过上述教导或相关领域的技术或知识进行改动。而本领域人员所进行的改动和变化不脱离发明的精神和范围,则都应在发明所附权利要求的保护范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1