武汉疫情牵动着全国人民的心,各大网站纷纷制作了实时疫情播报网站,来让大家能及时地了解到疫情的最新进展。
腾讯:https://news.qq.com/zt2020/page/feiyan.htm
丁香园:https://ncov.dxy.cn/ncovh5/view/pneumonia
然而对一些老年人或者其他群体来说,要让他们上网查看疫情仍然比较困难或者不方便。本文描述了怎么样从零开始制作一个能实时播报疫情的QQ机器人,这是最后的效果图:
用以简化疫情信息的获取途径,传播正能量的同时学习.Net的开发技巧。
本文的源代码可在码云上获取:https://gitee.com/akitosilver/CoronavirusQQRobot
1.前置开发环境:
本文使用Visual Studio 2019社区版开发,.Net SDK为3.1
QQ机器人采用酷Q Air:https://cqp.cc/
QQ机器人接口采用Newbe.Mahua:https://www.newbe.pro/Newbe.Mahua/Begin-First-Plugin-With-Mahua-In-v1.9/
2.原理讲解:
本文的框架如图所示。
要发送疫情,首先我们要先获得数据:
源码分别抓取了腾讯和丁香园的数据,这里我们以腾讯为例:
首先用Chrome打开腾讯实时疫情播报的首页,按下F12,到网络标签,随便在Search里搜索一个数据相关的数字,如下图,即可获得腾讯播报的数据接口:
数据为标准的JSON,粘贴到Json格式化工具里分析:
获得其Json的结构,大概是:
获得了JSON的结构后,我们把这个JSON接口转化为我们C#的类
HTTP下载JSON之后反序列化,即实现了数据的抓取:
利用Timer类,我们可以让我们的程序定时(几分钟)抓取一次这个数据,这里不再赘述。
2.发送数据:
发送数据部分请详细参考源代码与Newbe.Mahua文档:https://www.newbe.pro/Newbe.Mahua/Begin-First-Plugin-With-Mahua-In-v1.9/
简单来说我们之后只需要遍历这个JSON数据对应的类,找到地区数据发送即可。
本文由头条号“玩硬件”原创,禁止转载,如有问题请评论区交流。
,Copyright © 2008-2022 秒下下载站
m.down10s.com .All Rights Reserved