基于增量爬虫数据的实时监控与预警方法及装置与流程
- 国知局
- 2024-11-06 14:37:43
本发明涉及数据处理,尤其涉及一种基于增量爬虫数据的实时监控与预警方法、装置及电子设备。
背景技术:
1、爬虫数据是指通过网络爬虫(webcrawling)技术从互联网上抓取的信息或数据。网络爬虫是一种自动化的程序或脚本,它按照一定的规则,通过互联网来搜集和整理信息。这些爬虫可以模拟用户的行为,访问网页并提取所需的数据内容,然后将其存储为结构化的形式,供进一步的分析和使用。
2、爬虫数据的应用非常广泛,搜索引擎公司使用爬虫来索引网页内容,以便为用户提供相关搜索结果,学者们可能需要大量数据来进行研究,网络爬虫可以帮助他们快速获取所需数据。在大数据领域,爬虫技术是获取原始数据的重要手段之一。
3、随着爬虫项目的增多,手动去观察监控增量脚本是否正常运行,数据是否正常入库很难,甚至变的不可能,故需要写脚本对所有的爬虫项目进行监控及报警。
4、上述问题成为需要解决的技术问题。
技术实现思路
1、有鉴于此,本发明实施例提供了一种基于增量爬虫数据的实时监控与预警方法、装置及电子设备,至少部分解决现有技术中存在的问题。
2、第一方面,本发明实施例提供了一种基于增量爬虫数据的实时监控与预警方法,包括:
3、把需要监控的项目任务添加到数据记录表t1中,所述数据记录表t1包含所属项目、网站名、网站链接、sql库名、sql表名、增量模式和报警天数;
4、读取数据记录表t1,根据增量模式查询每个爬虫项目上一日的数据更新情况,得到最新增加入库的数据量后,根据各个项目的情况,分别更新到实时监控表t2中,同时将最新的增量数据量同时更新到监控历史表t3中;
5、从实时监控表t2中读取最新的增量数据并添加到监控邮件附件表t4中;
6、查看当前时间看是否是月初第一天,如果是,则从监控历史表t3中读取上个月整月的数据量并添加到监控邮件附件表t4中;
7、在获取所有的爬虫项目新增数据量后,根据不同的项目设置的每日预警极限值和无增量天数极限值,对异常的项目打标签输出到监控邮件报警附件表t5以发送报警邮件附件,对于无异常的情况,则发送无异常邮件,并附监控邮件附件表t4到邮件中,以便于在需要的时候直接打开附件看所有项目的每日增量情况。
8、根据本公开实施例的一种具体实现方式,所述把需要监控的项目任务添加到数据记录表t1中,包括:
9、定义数据记录表t1,记录表t1是二维表格,每一行代表一个项目任务,每一列表示项目的属性,将表t1表示为矩阵mt1,矩阵的每一行是一个向量ri,用以表示一个项目记录;
10、对于新项目,构造一个向量rnw=(p,w,l,d,t,m,a),p表示所属项目,w表示网站名,l表示网站链接,d表示sql库名,t表示sql表名,m表示增量模式,a表示报警天数;
11、将向量rnw添加到矩阵mt1中,形成新的矩阵mt1':
12、
13、表示集合的并集操作;
14、基于更新并保存修改后的表t1,使得新的记录持久化存储。
15、根据本公开实施例的一种具体实现方式,所述读取数据记录表t1,根据增量模式查询每个爬虫项目上一日的数据更新情况,得到最新增加入库的数据量后,根据各个项目的情况,分别更新到实时监控表t2中,包括:
16、将数据记录表t1表示为:
17、
18、pi是第i个项目的名称,wi是第i个项目对应的网站名,li是第i个项目对应的网站链接,di是第i个项目对应的数据存储库,ti是第i个项目对应的数据表,mi是第i个项目的增量模式,ai是第i个项目的报警天数;
19、将实时监控表t2表示为:
20、
21、pi是第i个项目的名称,△qi是第i个项目最近一次的数据增量;
22、从数据记录表t1中读取所有项目的记录,对于每个项目i,根据增量模式mi查询该爬虫项目上一日的数据更新情况,查询结果为△qi;
23、将查询得到的增量数据量△qi更新到实时监控表t2中对应的项目pi记录中,表示为:
24、
25、
26、
27、qry函数表示根据增量模式mi从数据库di中的表ti查询上一日的数据更新情况,t2i表示更新后的t2表中的第i个项目记录;
28、将所有项目的增量数据量更新到t2中,形成完整的实时监控表t2:
29、。
30、根据本公开实施例的一种具体实现方式,所述将最新的增量数据量同时更新到监控历史表t3中,包括:
31、定义t3如下:
32、
33、pi是第i个项目的名称,是时间戳,表示记录增量数据量的时间点,是第i个项目在时间的增量数据量;
34、对于每个项目i,将最新查询到的增量数据量△qi添加到监控历史表t3中;
35、对于每个项目i,构建一个新的记录(pi,t,△qi),并将其添加到t3中,t为当前时间,表示为:
36、
37、
38、
39、ctm()函数表示获取当前的时间戳;
40、将所有项目的最新增量数据量更新到t3中,形成完整的监控历史表t3:
41、。
42、根据本公开实施例的一种具体实现方式,所述从实时监控表t2中读取最新的增量数据并添加到监控邮件附件表t4中;,包括:
43、从实时监控表t2中读取所有项目的记录,对于每个项目i,从t2中读取最新的增量数据量δqi,并将这些信息构造为一个新的记录,将新构造的记录添加到监控邮件附件表t4中。
44、根据本公开实施例的一种具体实现方式,所述从监控历史表t3中读取上个月整月的数据量并添加到监控邮件附件表t4中,包括:
45、根据当前时间t,计算上个月的开始时间和结束时间;
46、对于每个项目i,从t3中读取在开始时间到结束时间这一时间段内的所有增量数据量;
47、将时间段内所有增量数据量求和,得到项目i上个月的数据量;
48、对于每个项目i,构造一个新的记录并添加到t4中。
49、根据本公开实施例的一种具体实现方式,所述根据不同的项目设置的每日预警极限值和无增量天数极限值,对异常的项目打标签输出到监控邮件报警附件表t5以发送报警邮件附件,包括:
50、从实时监控表t2中读取每个项目的最新增量数据量△qi,同时从监控历史表t3中读取相关的历史数据;
51、对于每个项目pi,根据其在数据记录表t1中设定的每日预警极限值li和无增量天数极限值ai进行判断,确定预警极限值;
52、对于每个项目,检查其最新的增量数据量△qi是否低于设定的每日预警极限值li,如果△qi<li,则认为该项目存在数据更新不足的风险;
53、从监控历史表t3中获取项目pi的最近预设时间内的数据更新记录,计算出连续无增量天数,如果连续无增量天数超过了项目的无增量天数极限值ai,则认为该项目存在长时间未更新的风险;
54、如果项目pi满足△qi<li或者连续无增量天数超过ai,则标记该项目为异常,并在监控邮件报警附件表t5中记录下来;
55、将所有标记为异常的项目记录(pi,△qi)输出到监控邮件报警附件表t5中,并准备发送报警邮件。
56、根据本公开实施例的一种具体实现方式,所述对于无异常的情况,则发送无异常邮件,并附监控邮件附件表t4到邮件中,包括:
57、确认所有被监控的项目都没有达到预警极限值或无增量天数极限值;
58、撰写邮件正文内容,表明所有项目目前均处于正常状态,没有发现异常情况;
59、将监控邮件附件表t4作为邮件附件添加进去。
60、第二方面,本发明实施例提供了一种基于增量爬虫数据的实时监控与预警装置,包括:
61、添加模块,把需要监控的项目任务添加到数据记录表t1中,所述数据记录表t1包含所属项目、网站名、网站链接、sql库名、sql表名、增量模式和报警天数;
62、更新模块,读取数据记录表t1,根据增量模式查询每个爬虫项目昨日的数据更新情况,得到最新增加入库的数据量后,根据各个项目的情况,分别更新到实时监控表t2中,同时将最新的增量数据量同时更新到监控历史表t3中;
63、读取模块,从实时监控表t2中读取最新的增量数据并添加到监控邮件附件表t4中;
64、查看模块,查看当前时间看是否是月初第一天,如果是,则从监控历史表t3中读取上个月整月的数据量并添加到监控邮件附件表t4中;
65、发送模块,在获取所有的爬虫项目新增数据量后,根据不同的项目设置的每日预警极限值和无增量天数极限值,对异常的项目打标签输出到监控邮件报警附件表t5以发送报警邮件附件,对于无异常的情况,则发送无异常邮件,并附监控邮件附件表t4到邮件中,以便于在需要的时候直接打开附件看所有项目的每日增量情况。
66、第三方面,本发明实施例还提供了一种电子设备,该电子设备包括:
67、至少一个处理器;以及,
68、与该至少一个处理器通信连接的存储器;其中,
69、该存储器存储有可被该至少一个处理器执行的指令,该指令被该至少一个处理器执行,以使该至少一个处理器能够执行前述任第一方面或第一方面的任一实现方式中的基于增量爬虫数据的实时监控与预警方法。
70、第四方面,本发明实施例还提供了一种非暂态计算机可读存储介质,该非暂态计算机可读存储介质存储计算机指令,该计算机指令用于使该计算机执行前述第一方面或第一方面的任一实现方式中的基于增量爬虫数据的实时监控与预警方法。
71、第五方面,本发明实施例还提供了一种计算机程序产品,该计算机程序产品包括存储在非暂态计算机可读存储介质上的计算程序,该计算机程序包括程序指令,当该程序指令被计算机执行时,使该计算机执行前述第一方面或第一方面的任一实现方式中的基于增量爬虫数据的实时监控与预警方法。
72、本发明实施例中的基于增量爬虫数据的实时监控与预警方案,包括:把需要监控的项目任务添加到数据记录表t1中,所述数据记录表t1包含所属项目、网站名、网站链接、sql库名、sql表名、增量模式和报警天数;读取数据记录表t1,根据增量模式查询每个爬虫项目上一日的数据更新情况,得到最新增加入库的数据量后,根据各个项目的情况,分别更新到实时监控表t2中,同时将最新的增量数据量同时更新到监控历史表t3中;从实时监控表t2中读取最新的增量数据并添加到监控邮件附件表t4中;查看当前时间看是否是月初第一天,如果是,则从监控历史表t3中读取上个月整月的数据量并添加到监控邮件附件表t4中;在获取所有的爬虫项目新增数据量后,根据不同的项目设置的每日预警极限值和无增量天数极限值,对异常的项目打标签输出到监控邮件报警附件表t5以发送报警邮件附件,对于无异常的情况,则发送无异常邮件,并附监控邮件附件表t4到邮件中,以便于在需要的时候直接打开附件看所有项目的每日增量情况。本技术的方案本发明不需要任何接入任何软件接口,可以适配任何系统,适应度高,且无其他成本,可以满足一般小企业的大部分爬虫任务监控需求,可以根据实际情况调整表字段以及脚本参数,快速高效的实现爬虫任务的监控。
本文地址:https://www.jishuxx.com/zhuanli/20241106/323189.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。