基于云计算技术的数据采集系统及方法技术方案

技术编号:16506246 阅读:119 留言:0更新日期:2017-11-04 21:16
本发明专利技术公开了一种基于云计算技术的数据采集系统及方法,系统采用分布式分层协作、可水平扩展的异步队列方案,包括任务调度器、生成器、下载器及解析器;任务调度器根据每一个数据采集任务调度所述生成器、下载器及解析器,以采集到与每一个数据采集任务相关的数据;生成器根据所述任务调度器的调度以生成与该数据采集任务对应的每一个待采集网站相关页面的URI;下载器用于根据所述任务调度器的调度以下载每一个待采集网站相关页面的URI所对应的原始数据;解析器用于根据任务调度器的调度以对所述下载器下载的原始数据解析为结构化数据。采集系统可以根据任务量及负载情况,通过快速部署功能实现分布式的弹性拓展,快速提高系统的负载能力。

【技术实现步骤摘要】
基于云计算技术的数据采集系统及方法
本专利技术涉及网络信息采集领域,特别涉及一种基于云计算技术的数据采集系统及方法。
技术介绍
随着互联网技术的高速发展,其所包含的信息量正在以指数型趋势高速增长,由此导致人们在海量的信息中需要花费大量的精力来找寻自己需要的信息,因此人们对于随时随地获取自身所需求信息的渴望越来越强烈。通过采用搜索引擎,可以帮助人们快速的查找到想要的信息。然而现在的搜索引擎返回的结果往往包含大量非相关内容,当前技术中还采用网络爬虫来进行资源的搜集和抓取。尽管现在的网络爬虫技术已经快速发展,各种网络数据采集平台应运而生,但是多数网站不断改版,反扒手段也在不断升级,网络数据采集技术仍旧需要探讨和改进。现有的爬虫工具往往需要根据具体的应用环境以及站点特征进行专门开发,针对网站改版、更换环境、需求扩展等变化很难作出快速响应,扩展性差,不能够满足不同用户的不同需求。尤其对于依托数据、有舆情监控需求的公司,数据采集的实时性直接决定了数据的有效性和价值,同时需要监控海量站点,对事件的发生、经过和结果进行跟踪,而反观传统的网络爬虫,人员要求多,开发速度慢,普遍适用性较低,开发运维成本较高,已经不能满足这种海量监控、实时性高、数据量大的需求了。
技术实现思路
针对上述现有技术的不足,本专利技术所要解决的技术问题是:提供一种基于云计算技术的分布式数据采集系统及方法,可配置,稳定性高,具备分钟级的横向添加机器扩展系统性能的能力,内置多任务系统,支持任务级别的灵活调度及一键化的部署运维。此外,通过可视化的界面监控并管理采集层、分析层、存储层的行为,有效控制数据采集的频率、监控数据采集系统的运行状态等。为解决上述技术问题,本专利技术采用的一个技术方案是:提供一种基于云计算技术的分布式数据采集系统,包括任务调度器、生成器、下载器、解析器以及多种特色插件;所述任务调度器用于根据每一个数据采集任务调度所述生成器、下载器以及解析器,从而采集到与每一个数据采集任务相关的数据;所述生成器用于根据所述任务调度器的调度以生成与该数据采集任务对应的每一个待采集网站相关页面的URI;所述下载器用于根据所述任务调度器的调度以下载所述每一个待采集网站相关页面的URI所对应的原始数据;所述解析器用于根据所述任务调度器的调度以对所述下载器下载的原始数据解析为结构化数据并导出到所述数据存储模块中。所述特色插件包含验证码识别、IP代理、OCR识别、NLP处理等具备特殊用途的功能模块。进一步的,还包括生成器自定义模块,用于供用户预先根据待采集网站页面的特征自定义对应的生成器生成规则,从而使得所述生成器能够根据对应的规则生成所述待采集的网站的URI。进一步的,还包括下载器自定义模块,用于供用户预先根据待采集的网站的特征自定义对应的下载器规则,从而使得所述下载器能够根据对应的规则下载所述待采集网站的URI对应的公开数据。进一步的,还包括解析器自定义模块,用于供用户预先根据待采集的网站页面的特征自定义对应的解析器解析规则,从而使得所述解析器能够根据相应的规则解析所述待采集网站的公开数据。进一步的,还包括数据存储模块,用于存储所述数据采集任务相关的自定义规则;还用于存储所述生成器生成的与所述数据采集任务相关的每一个待采集网站相关页面的URI以供所述下载器调用;还用于存储所述下载器下载的与所述每一个待采集网站的原始数据以供所述解析器调用;还用于存储所述解析器解析的结构化数据。进一步的,还包括采集层、结构化层以及存储层,所述存储层包括所述数据存储模块,所述采集层包括所述的生成器以及所述的下载器,所述结构化层包括所述的解析器和防重器。进一步的,还包括系统层,所述系统层用于管理每一个数据采集任务及其对应于每一个网站的子任务、系统管理以及权限管理,所述系统管理包括插件管理、机器管理、代理管理、存储管理、报警管理、OCR管理和NLP管理,所述权限管理包含角色权限管理、用户管理、组权限、权限列表以及操作日志管理,所述子任务管理用于直观查看每个子任务的进度、错误日志等数据,以方便监控运维。进一步的,所述任务调度器按照与所述数据采集任务相关的网站优先级顺序由先至后的为对应的网站采集任务调度所述生成器、下载器以及解析器,完成整体流程和调度和控制,以由先至后的依次完成对应网站的数据采集,从而实现对应众多数据采集任务的调度和数据采集。进一步的,所述任务调度器包括生成任务调度器,用于获取与所述数据采集任务相关的每一个待采集的网站页面URI生成的调度配置信息,以获得每一个待采集网站的调度时序,并根据所述调度时序激活分发工作,从而由先至后依次为每一个待采集网站页面插入对应的生成器至任务分发队列,并开启进程以执行对应的生成器,从而使其按照生成规则成对应网站的URI。进一步的,所述任务调度器包括下载任务调度器,用于获取与所述数据采集任务相关的每一个待采集网站页面下载的调度配置信息,以获得每一个待采集网站页面的调度时序,并根据所述调度时序激活分发工作,从而由先至后依次为每一个待采集网站页面插入对应的下载器至下载任务分发队列,并开启进程以执行对应的下载器,从而使其成下载与对应网站页面的URI相关原始数据。进一步的,所述任务调度器包括解析任务调度器,用于获取与所述数据采集任务相关的每一个待采集的网站页面下载数据解析的调度配置信息,以获得每一个待采集网站页面的调度时序,并根据所述调度时序激活分发工作,并开启进程以执行对应的解析器,从而使其成解析与对应网站的原始数据。为解决上述技术问题,本专利技术采用的一个技术方案是:提供一种网站公开数据采集方法,包括以下步骤:加载数据采集任务;根据数据采集任务调度生成器以生成与该数据采集任务对应的每一个待采集网站页面的URI;根据所述生成的所述待采集网站页面的URI调度下载器以下载所述每一个待采集网站页面的URI对应的原始数据;根据所述下载器下载的每一个待采集网站页面对应的URI对应的原始数据调度解析器以对所述下载器下载的公开数据进行解析并结构化存储。进一步的,在所述获取数据采集任务的步骤之前,还包括:据待采集的网站的特征配置对应的生成器参数或生成规则脚本,从而使得所述生成器能够根据配置的参数或生成规则生成所述待采集网站页面的URI。进一步的,在所述获取数据采集任务的步骤之前,还包括:根据待采集的网站的特征和数据采集需求配置对应的下载器参数,从而使得所述下载器能够根据配置的参数下载所述待采集网站页面的URI所对应的公开数据。进一步的,在所述获取数据采集任务的步骤之前,还包括:根据待采集的网站的特征配置对应的解析器参数或解析规则脚本以及数据导出配置脚本,从而使得所述解析器能够根据配置的参数或解析规则解析所述待采集网站页面的公开数据并结构化存储。本专利技术基于云技术的数据采集系统及方法,用了分布式分层协作、可水平扩展的异步队列方案设计完成,支持多种类型数据采集,支持单机内多线程、多进程运行以及一键化部署运维,同时支持自定义爬虫脚本配置,是一个一站式通用爬虫开发和数据采集平台,能够支持上P级数据抓取、分钟级的更新粒度,并允许开发者增加扩展特殊插件。一方面帮助开发者快速构建功能强大的数据采集系统,另一方面大大提高了数据的采集效率和可扩展性,能够应对实时性要求高、采集网站芜杂、数据本文档来自技高网...
基于云计算技术的数据采集系统及方法

【技术保护点】
一种基于云计算技术的数据采集系统,包括任务调度器、生成器、下载器以及解析器;所述任务调度器用于根据每一个数据采集任务调度所述生成器、下载器以及解析器,从而采集到与每一个数据采集任务相关的数据;所述生成器用于根据所述任务调度器的调度以生成与该数据采集任务对应的每一个待采集网站相关页面的URI;所述下载器用于根据所述任务调度器的调度以下载所述每一个待采集网站相关页面的URI所对应的原始数据;所述解析器用于根据所述任务调度器的调度以对所述下载器下载的原始数据解析为结构化数据。

【技术特征摘要】
1.一种基于云计算技术的数据采集系统,包括任务调度器、生成器、下载器以及解析器;所述任务调度器用于根据每一个数据采集任务调度所述生成器、下载器以及解析器,从而采集到与每一个数据采集任务相关的数据;所述生成器用于根据所述任务调度器的调度以生成与该数据采集任务对应的每一个待采集网站相关页面的URI;所述下载器用于根据所述任务调度器的调度以下载所述每一个待采集网站相关页面的URI所对应的原始数据;所述解析器用于根据所述任务调度器的调度以对所述下载器下载的原始数据解析为结构化数据。2.如权利要求1所述的基于云计算技术的数据采集系统,其特征在于:还包括生成器自定义模块,用于供用户预先根据待采集网站页面的特征自定义对应的生成器生成规则,从而使得所述生成器能够根据对应的规则生成所述待采集的网站的URI。3.如权利要求1所述的基于云计算技术的数据采集系统,其特征在于:还包括下载器自定义模块,用于供用户预先根据待采集的网站的特征自定义对应的下载器规则,从而使得所述下载器能够根据对应的规则下载所述待采集网站的URI对应的原始数据。4.如权利要求1所述的基于云计算技术的数据采集系统,其特征在于:还包括解析器自定义模块,用于供用户预先根据待采集的网站页面的数据特征自定义对应的解析器解析规则,从而使得所述解析器能够根据相应的规则解析所述下载器下载的所述待采集网站的原始数据。5.如权利要求1至4中任一项所述的基于云计算技术的数据采集系统,其特征在于:还包括数据存储模块,用于存储所述数据采集任务相关的配置信息及用户自定义规则;还用于存储所述生成器生成的与所述数据采集任务相关的每一个待采集网站相关页面的URI以供所述下载器调用;还用于存储所述下载器下载的与所述每一个待采集网站的原始数据以供所述解析器调用;还用于存储所述解析器解析的结构化数据。6.如权利要求5所述的基于云计算技术的数据采集系统,其特征在于:还包括采集层、结构化层以及存储层,所述存储层包括所述数据存储模块和防重器,所述采集层包括所述的生成器以及所述的下载器,所述结构化层包括所述的解析器。7.如权利要求6所述的基于云计算技术的数据采集系统,其特征在于:还包括系统层,所述系统层用于每一个数据采集任务及其对应于每一个网站的子任务的管理、系统管理以及权限管理,所述系统管理包括插件管理、存储管理、报警管理、防重器管理、机器管理等,所述插件管理包含所述生成器、下载器、解析器、验证码识别、IP代理、OCR和NLP等模块管理,所述权限管理包含角色权限管理、用户管理、组权限、权限列表以及操作日志管理,所述子任务管理用于直观查看每个子任务的进度、错误日志等数据,以方便监控运维。8.如权利要求1至4中任一项所述的基于云计算技术的数据采集系统,其特征在于:所述任务调度器按照与所述数据采集任务相关的网站优先级顺序由先至后的为对应的网站采集任务调度所述生成器、下...

【专利技术属性】
技术研发人员:刘刚谭焕云姜志刚黄元庆张振海
申请(专利权)人:中证信用增进股份有限公司
类型:发明
国别省市:广东,44

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

1