技术领域
本发明涉及数据处理技术领域,具体涉及一种面向多目标的社会公共安全风险数据获取方法。
背景技术
随着大数据时代的到来,互联网中的数据量激增,其中包含了很多有关社会公共安全风险的数据,这些数据的数据量大、维度高、数据源广,传统的针对普通互联网信息的搜集方法已经难以满足现在的需求,因此如何快速地收集社会公共安全风险数据变得尤为重要。
社会公共安全风险数据对国家、政府进行应急处理和风险防控具有重要意义,这些数据的主要来源有:社交网站、主流新闻网站、政府发声网站、舆情信息发布网站。目前,针对不同的数据来源和目标,使用网络爬虫,设计数据爬取规则来获取目标互联网资源,可有选择性地访问各种网络资源及其相关链接,最后进行一定的分析、过滤,提取其中的有效信息,并永久化储存,以便后续的查询和使用。
由于现在各搜索引擎对自身服务器都采取了一定的保护措施,即限制用户在一定时间内对搜索引擎的访问次数。为不侵犯该搜索引擎保护协议,一种有效的方法是限制单位时间内的访问次数,但该方法会降低爬虫的效率,在目前庞大数据量环境下,会导致巨量的时间消耗,容易使数据失去其时效性。传统爬虫方法大多只考虑到了爬取效率问题,但目前多数网站都采用了强大的反爬机制,导致爬虫出现安全性问题。
发明内容
针对现有技术的不足,本发明旨在提供一种面向多目标的社会公共安全风险数据获取方法,可在保证爬虫安全性的情况下,尽可能提高爬虫的效率。
为了实现上述目的,本发明采用如下技术方案:
一种面向多目标的社会公共安全风险数据获取方法,包括如下步骤:
S1、需要爬取各个目标网站的前Q条信息,其中每个网站为一个爬取目标,每条信息为一个子任务;确定待爬取的目标网站,设目标网站数量为S;定义子任务矩阵为:
其中,a
对于每个目标网站制定相应的提取方式,定义提取方式的矩阵为:
F=[f
其中,f
S2、定义置换
S
=[s
其中,k
S3、开始爬取:对于同一子任务s
其中t
t
S4、爬取完成后,采用步骤S1中指定的信息提取方式F对相应目标网站的页面内容进行过滤并,将有效信息保存至数据库或输出为excel表格。
进一步地,步骤S3中,请求窗口大小window(t)由0开始,进行以a为底数指数增长,到达预先设定的阈值th
本发明的有益效果在于:本发明方法提供了一种基于置换映射和自适应速率的爬虫方法,可在保证爬虫安全性的情况下,尽可能提高爬虫的效率。
附图说明
图1为本发明实施例的方法流程示意图;
图2为本发明实施例中请求窗口的结构示意图;
图3为本发明实施例中基于速度控制的异常处理下的窗口大小变化示意图。
具体实施方式
以下将结合附图对本发明作进一步的描述,需要说明的是,本实施例以本技术方案为前提,给出了详细的实施方式和具体的操作过程,但本发明的保护范围并不限于本实施例。
本实施例提供一种面向多目标的社会公共安全风险数据获取方法。在本实施例中,需要爬取各大主流新闻网站主页的前200条信息,其中每个网站为一个爬取目标,每条信息为一个子任务。如图1所示,所述方法包括如下步骤:
S1、首先确定待爬取的目标网站。本实施例中选取的主流新闻网站包括人民网、新华社、中国国际广播电台、中国日报四个,共800个子任务。定义子任务矩阵为:
其中,a
对于每个目标网站制定相应的提取方式,如标签定位方式,范围搜索方式等,具体可以自定义。定义方法矩阵为:
F=[f
其中,f
S2、定义置换
S
=[s
其中,A
S3、本实施例中采用分布式爬虫方式,即对于同一子任务s
其中t
t
如图1所示,每次任务执行中如果出现执行失败的情况,允许重新执行,但是尝试T次后依然失败就不再尝试,继续进行下一次的任务。
在上述任务执行过程中,可能出现子任务请求被服务器拒绝和子任务出现超时等情况,本实施例设计了一种基于速度控制的异常处理方式,通过动态调整请求窗口大小保证整体工作处于安全、稳定的状态。如附图3,该过程可抽象为如下函数:
请求窗口大小window(t)由0开始,进行以a为底数指数增长,到达预先设定的阈值th
S4、采用步骤S1中指定的信息提取方式F对相应目标网站的页面内容进行过滤并将有效信息保存至数据库或输出为excel表格。
对于本领域的技术人员来说,可以根据以上的技术方案和构思,给出各种相应的改变和变形,而所有的这些改变和变形,都应该包括在本发明权利要求的保护范围之内。
机译: 确定脑病或脑病的病态危险的数据获取方法及其利用和确定脑痉挛向癫痫的转化风险及其利用的数据获取方法
机译: 一种预测在肺癌或肺癌患者治疗后患者中肺癌复发的风险的方法,一种在肺癌或肺癌治疗后患者中报告肺癌发生风险的方法以及肺癌和肺癌患者的治疗方法由相同的药物,试剂盒和微阵列制备,用于诊断肺癌治疗或肺癌患者后患者肺癌复发的风险
机译: 面向服务的自动化系统的系统组件的监视,控制和数据获取的方法以及执行该方法的自动化系统