基于模板的分布式互联网大数据采集系统及方法技术方案

技术编号:37248835 阅读:19 留言:0更新日期:2023-04-20 23:27
本发明专利技术公开了一种基于模板的分布式互联网大数据采集系统及方法,主要解决现有技术系统稳定性低、维护困难、采集内容不灵活的问题。其主要由系统功能管理单元和任务执行单元组成。该系统功能管理单元包括:模板管理模块、代理管理模块、任务管理模块和节点管理模块;该任务执行单元包括:主体逻辑处理模块,异常处理模块和后处理模块。这些模块分别完成模板测试、嵌套,设置代理请求间隔,生成数据采集任务,监控节点信息,执行任务,处理异常任务、对无异常任务继续采集的功能。本发明专利技术增强了系统的安全性和稳定性,提高采集内容的灵活性和可扩展性,提升了数据采集系统的性能和可移植性,降低了系统的维护难度,可用于人工智能、大数据、物联网。物联网。物联网。

【技术实现步骤摘要】
基于模板的分布式互联网大数据采集系统及方法


[0001]本专利技术属于大数据
,尤其涉及一种分布式互联网大数据采集系统及方法,可用于人工智能、大数据、物联网。

技术介绍

[0002]近年来人工智能、区块链、物联网等多种技术的发展都需要大数据支持,而互联网上充斥着大量数据,如何将互联网上的可用数据精准采集下来是一个有挑战性的问题。传统网络数据采集基于网络爬虫技术,网络爬虫是一种自动化的程序,它可以在互联网上抓取、提取和收集数据,它通常通过自动地访问网站,抓取网站上的数据,并将其存储在本地计算机上。网络爬虫技术主要实现三个功能:获取网页信息,收集数据;解析网页数据,提取数据;将提取到的数据保存到合适的数据库中。爬虫程序抓取到的数据需要存储在本地计算机上,以便后续处理和分析。
[0003]目前,爬虫技术主要集中在三个方面:一是注重采集效率的分布式爬虫技术,分布式爬虫是一种分布式系统,它可以将一个爬虫任务分解成多个子任务,并分配到不同的机器上执行。分布式爬虫技术可以提高爬虫的效率和吞吐量,并且可以避免单点故障的问题;二是注重采集内容的动态网页爬虫技术,动态网页爬虫是一种特殊的爬虫,它可以处理动态网页的抓取和提取。动态网页爬虫通常会使用浏览器模拟器,以模拟真实用户的行为,从而抓取动态网页上的数据;三是注重采集数据深度的深度爬虫技术,深度爬虫技术的采集深度比一般网络爬虫更深,更多地挖掘网页信息,并能够按照网站结构深入采集。这种技术通常会在采集到某一网页时,继续采集其中所有链接的页面,直到采集到网站的最深层次。深度爬虫技术可以获取更多的网页信息,并且能够更全面地分析网站的结构。
[0004]公开号为CN110489698A的专利献公开了一种自动化采集网页数据的系统及方法,其基于嵌入式浏览器增加脚本引擎模块和流程控制模块,实现对网页数据的自动化采集,但此系统并没有对目标网站的访问频率进行限制,也没有使用代理,网站的反爬机制会检测访问频率和IP地址,当网站在短时间内检测到大批量的请求来自同一个IP地址时,会将这些请求视为机器行为,禁止这些请求访问到网页数据,进而无法采集到数据。
[0005]公开号为CN110442766A的专利文献公开了一种网页数据采集方法、装置、设备及存储介质,该方法对于不同的数据采集需求预设了不同的脚本模板,但网站结构日新月异,一旦网页结构发生变化,需要修改所有相关模板,后期维护困难。
[0006]此外,上述这些技术方案虽然可以获取动态网页数据、采集网页深度数据,但采集内容仅限制在当前网页或继续采集当前网页中存在的链接数据,采集内容的灵活度和可扩展性不高。

技术实现思路

[0007]本专利技术的目的在于提供一种基于模板的分布式互联网大数据采集系统及方法,以解决上述现有技术的问题,提高采集数据的安全性、稳定性,提升采集的灵活性和可扩展
性。
[0008]为实现上述目的,本专利技术的技术方案如下:
[0009]1.一种基于模板的分布式互联网大数据采集系统,其特征在于:包含系统功能管理单元和任务执行单元
[0010]所述系统功能管理单元,包括:
[0011]模板管理模块,用于系统中各采集模板的管理,包括增删改查、导入导出,并提供模板测试功能和模板嵌套功能;
[0012]代理管理模块,用于采集任务所需要的代理管理,包括代理的创建、删除、导入导出以及对代理进行请求间隔设置;
[0013]任务管理模块,用于根据模板管理模块和代理管理模块的已有数据以及相关设置,生成并保存数据采集任务;
[0014]节点管理模块,用于节点整体设置管理,监控节点信息,采集数据浏览;
[0015]所述任务执行单元,包括:
[0016]主体逻辑处理模块,用于根据相关设置执行任务管理模块生成的任务;
[0017]异常处理模块,其包括代理异常处理子模块和模板异常处理子模块,用于当主体逻辑处理模块处理过程中出现问题时,根据不同的异常类型进入不同的异常处理分支进行处理;
[0018]后处理模块,用于当主体逻辑处理子模块执行无异常,进行后续采集数据的处理和保存。
[0019]进一步,所述模板管理模块进行模板测试,首先新建、导入或修改模板,并配置模板运行所需要的变量;再将配置好的模板信息传递给主体逻辑处理模块,主体逻辑处理模块执行数据采集任务;主体逻辑处理模块运行结束后,把运行结果再返回给模板管理模块,模板管理模块再进行简单展示:若执行成功,模板管理模块会显示采集到的数据信息;若执行失败,模板管理模块会显示异常信息,重新修改模板,重复整个过程,直到模板可以采集到预期内容后,保存模板待用。
[0020]进一步,所述模板管理模块在新建模板时进行模板嵌套设置,即调用当前模板和已有模板共享任务变量设置,模板之间通过配置不同采集网址实现多网站联合采集数据内容。
[0021]进一步,所述代理管理模块对代理进行请求间隔设置,是根据给定的每秒请求数,为每一个访问请求设置特定的访问时间间隔,使单个采集任务中所有发出的请求服从泊松分布,请求间隔服从指数分布,具体操作为先根据每秒请求数计算平均请求时间间隔,并以此间隔为期望构建指数分布曲线;再在此曲线上进行随机采样,给每个请求设置指定访问时间间隔。
[0022]进一步,所述主体逻辑处理模块执行任务的数据采集逻辑,是采集任务的主体流程,即根据任务的模板及其变量信息,使用任务所配置的代理,按照设定的执行时间和代理请求访问频率进行执行模板任务。
[0023]2.利用上述系统进行大数据采集的方法,其特征在于,包括以下步骤:
[0024]S1)基于Docker技术,运行系统部署脚本文件,部署数据采集系统:
[0025]使用部署脚本,部署基础Docker服务;
[0026]在此基础Docker服务上运行数据采集系统的数据存储节点镜像,生成对应容器,以部署数据存储节点;
[0027]运行数据采集系统的采集节点镜像,生成对应容器,部署采集节点。
[0028]S2)登入数据采集系统,即在数据采集系统部署完成后,进入系统管理界面,通过系统功能管理单元的所有模块进行相应操作:
[0029]S2a)模板管理模块,新建数据采集模板或导入现有模板,在模板创建完成后可选择进行模板测试;
[0030]S2b)代理管理模块,新建或导入代理服务器,并设置代理的每秒请求数;
[0031]S2c)任务管理模块,选择待执行的采集模板和欲使用的代理,设置任务运行时间,配置任务运行变量,配置完成后运行采集任务,将任务信息发送给任务执行单元;
[0032]S3)任务执行单元执行数据采集任务:
[0033]主体逻辑处理模块在接收到采集任务信息后,按照任务的相关配置执行采集任务,并在整个执行过程中,根据执行的情况进行不同操作:
[0034]若整个过程执行正常,则通过后处理模块处理和保存采集到的数据;
[0035]否则,通过异常处理模块处理异常问题,本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于模板的分布式互联网大数据采集系统,其特征在于:包含系统功能管理单元(1)和任务执行单元(2);所述系统功能管理单元(1),包括:模板管理模块(11),用于系统中各采集模板的管理,包括增删改查、导入导出,并提供模板测试功能和模板嵌套功能;代理管理模块(12),用于采集任务所需要的代理管理,包括代理的创建、删除、导入导出以及对代理进行请求间隔设置;任务管理模块(13),用于根据模板管理模块和代理管理模块的已有数据以及相关设置,生成并保存数据采集任务;节点管理模块(14),用于节点整体设置管理,监控节点信息,采集数据浏览;所述任务执行单元(2),包括:主体逻辑处理模块(21),用于根据相关设置执行任务管理模块生成的任务;异常处理模块(22),其包括代理异常处理子模块(221)和模板异常处理子模块(222),用于当主体逻辑处理模块处理过程中出现问题时,根据不同的异常类型进入不同的异常处理分支进行处理;后处理模块(23),用于当主体逻辑处理模块执行无异常时,进行后续采集数据的处理和保存。2.根据权利要求1所述的系统,其特征在于:所述模板管理模块(11)进行模板测试,是先新建、导入或修改模板,并配置模板运行所需要的变量;再将配置好的模板信息传递给主体逻辑处理模块执行数据采集任务;主题逻辑处理模块运行结束后,把运行结果返回给模板管理模块,模板管理模块再进行简单展示:若执行成功,模板管理模块会显示采集到的数据信息;若执行失败,模板管理模块会显示异常信息,重新修改模板,重复整个过程,直到模板管理模块模板采集到预期内容后,保存模板待用。3.根据权利要求2所述的系统,其特征在于:所述模板管理模块(11)在新建模板时进行模板嵌套设置,即调用当前模板和已有模板共享任务变量设置,模板之间通过配置不同采集网址实现多网站联合采集数据内容。4.根据权利要求1所述的系统,其特征在于,所述代理管理模块(12)对代理进行请求间隔设置,是根据给定的每秒请求数,为每一个访问请求设置特定的访问时间间隔,使单个采集任务中所有发出的请求服从泊松分布,请求间隔服从指数分布,实现步骤为先根据每秒请求数计算平均请求时间间隔,并以此间隔为期望构建指数分布曲线;再在此曲线上进行随机采样,给每个请求设置指定访问时间间隔。5.根据权利要求1所述的系统,其特征在于:所述任务管理模块(13)构建的数据采集任务,包含配置采集模板、指定模板变量、设置任务执行时间。6.根据权利要求1所述的系统,其特征在于:所述节点管理模块(14)监控的...

【专利技术属性】
技术研发人员:韩红朱正强张森
申请(专利权)人:西安电子科技大学
类型:发明
国别省市:

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

1