最新疫情数据报告已到达你的邮箱!-程序员宅基地

点击上方“Python爬虫与数据挖掘”,进行关注

回复“书籍”即可获赠Python从入门到进阶共10本电子书

问世间情为何物,直教人生死相许!

2020年“地狱”难度的开局,属实一下子还没反应过来事情就发生了。截止到1月31日,新型冠状病毒肺炎累计确诊的人数已是“非典”的两倍之多,广大被“禁足”的网友们在这个春节里时刻心系着病毒的传播范围,短短数日,却蔓延迅速,全国染红。

一边是不断增长的确诊人数,而另一边是各种刷新三观的新闻爆出,让大家的心情跟坐过山车一样。

你可能已经看过各种“真相”:

疾控中心早已知道“人传人”,但却刻意隐...

国家院士早发表论文“人传人”,而你却浑然不....

双黄连对新型冠性....抑制

武汉某会钱“用不出去”

非典专家认为SARS Cov是非自然方式产生(美帝主义的阴谋)

此外,封城越久,寄情于网络越深,然而疫情消息满天飞,更有些不实言论,看多了徒增焦虑。且这届中老年组实在太难带了。

为避免他们过度恐慌或掉以轻心,同时小试下修炼已久的Python降龙十八掌,基于这两方面考虑想到一个体面又不失优雅的办法:

拿上Python花2小时写了采集、分析、并定点推送官方数据的代码,每天定时推送官方数据和亲友身边城市的疫情实时数据分布图,让大家理性关注、科学防范,做好疫情的自我防护。

先来个效果图

这个idea拆解为三个部分:

1、数据获取

2、数据处理

3、数据推送

数据获取

目前新浪、腾讯以及人民日报&丁香园联手等单位都推出了疫情地图,有人民日报在,那必须最权威了。锁定主要从该网站取数据后,通过网页工具可发现用get请求便可取到数据了。好消息是有的同志预见了类似我这样群众跃跃欲试的热情,遂公开了API接口。

请求接口:/nCoV/api/area

请求方式:GET
返回数据如下:

采用API接口的源码如下:

这里也贴上最初无API情况下的尝试:

数据处理

包括数据清洗和图表制作两大部分。

数据清洗:读取到的数据类型为由dict组成的list数据。由于要详细分析省内各地市情况所以将各省的cities内的数据读取出进行分析,可以在这里将各省确诊案例或疑似案例排名前5的城市及详情列出。

图表制作:可采用Pyecharts和matplotlib两种方式生成图表。

用pyecharts画同心圆饼图:

(限于篇幅,这里已湖北、广东省为例图)

用matplotlib画趋势图或地图:

数据推送

本工具采用SMTP邮箱服务器进行信息推动。SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式。python的smtplib提供了一种很方便的途径发送电子邮件。它对smtp协议进行了简单的封装。

本案例的发送邮件模块源码如下:

踩坑提醒!

这款API大概有以下3种使用方法:

1. /nCoV/api/area?latest=1&province=湖北省返回湖北省疫情最新数据

2. /nCoV/api/area?latest=0&province=湖北省返回湖北省疫情的时间序列数据

3. /nCoV/api/area?latest=1返回中国全部城市及世界其他国家疫情最新数据

建议尽量采用第2种,latest=0读时序数据的方式。不要问为啥,因为我也很绝望,用latest=1偶尔读不到数据,不信看下面这个31日早上调用结果的截图,差点还以为复活了。毕竟数据是很严肃的事,容不得半点虚。

总结

疫情信息流爆炸,看了徒增焦虑,技术服务生活,有需求的地方就有idea。写了个爬虫定期推送官方数据给亲友们,如有需求可告知邮箱地址及希望收到推送时间 。

说明

本文所系为真实个人邮箱,源码中有所体现,不做全部开放,有完整源码需求的请私信。

------------------- End -------------------

往期精彩文章推荐:

欢迎大家点赞,留言,转发,转载,感谢大家的相伴与支持

想加入Python学习群请在后台回复【入群

万水千山总是情,点个【在看】行不行

/今日留言主题/

随便说一两句吧~~多多留言,脸熟后可以直接赠书噢!

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/pdcfighting/article/details/104243246

智能推荐

论文高质量中文翻译:Scalable Diffusion Models with Transformers 可扩展的Transformer扩散模型-程序员宅基地

文章浏览阅读961次,点赞29次,收藏28次。我们探索了一种基于Transformer架构的新型扩散模型。我们训练了基于图像的潜在扩散模型,将常用的U-Net骨干替换为在潜在补丁上操作的Transformer。我们通过Gflops衡量的前向传递复杂性的角度分析了我们的扩散Transformer(DiTs)的可扩展性。我们发现,具有更高Gflops的DiTs(通过增加Transformer的深度/宽度或增加输入令牌的数量)始终具有较低的FID。

mysql数据库的导入和导出_mysql source导出-程序员宅基地

文章浏览阅读311次。将数据库bjpowernode中的数据 导出到D:\Java\MySQL目录下,起个名字bjpowernode.sql(sql脚本)然后初始化数据库:source D:\Java\MySQL\bjpowernode.sql。然后创建数据库:create database bjpowernode;注意:需要先登录到mysql数据库服务器上。使用数据库:use bjpowernode。_mysql source导出

elasticsearch bool联合查询的使用should、must、must_not、filter以及should与另外三个并列时无法生效问题_elasticsearch bool查询下 must_not和must联合查询 must_not失效-程序员宅基地

文章浏览阅读6k次,点赞4次,收藏11次。本意上想做到像这个sql一样select * from tablewhere( dynamicType = '201' and viewTime = '2019-10-11' )and( uniqueKey = 'xxx' or uniqueKey = 'zzz' )1、出现问题的写法,在bool下面有must和should同级的两个属性,像下面这样下就会导致should的筛选失效,只有must生效{ "query": { "bool": {..._elasticsearch bool查询下 must_not和must联合查询 must_not失效

VMware 虚拟机下给新装的CentOS7安装Python3.7.2_使用vmware对centos7进行python环境配置-程序员宅基地

文章浏览阅读3.1k次,点赞11次,收藏36次。VMware 虚拟机下给新装的CentOS7安装Python3.7.21. 安装环境2. 备份CentOS73. 安装相关包4. 下载python3.7.2的源码包5. 编译python3源码包6. 添加软链接7. 更改yum设置,因为要用python2才能执行,否则无法使用yum8. 参考资料9. 后记1. 安装环境虚拟机:VMware Pro12Linux版本:Centos 7 注意我安..._使用vmware对centos7进行python环境配置

Tomcat下载与安装 以及 Eclipse整合Tomcat_怎么让eslipse有多个tomcat-程序员宅基地

文章浏览阅读1.3w次,点赞12次,收藏86次。Tomcat下载与安装 1、Tomcat下载官网:http://tomcat.apache.org/ 2、在右侧的Download,选择相应版本的Tomcat链接进行下载,这里我选择下载 Tomcat 9版本 3、找到Binary Distributions下的Core,根据自己的系统选择对应的版本,32位的选择32-bit Windows z..._怎么让eslipse有多个tomcat

计算机程序不支持中文文件目录怎么办,电脑软件打开时提示找不到指定路径-程序员宅基地

文章浏览阅读3.5k次。电脑软件打开时提示找不到指定路径以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!电脑软件打开时提示找不到指定路径首先右键属性察看目标,如果能有内容说明每连接错那么就是中毒了.如果打不开则可能是软件位置被挪动或者被删除.其次直接到硬盘的具体位置上找,如果找到但大不开,则可能是中毒,如果打开了就重新建一个快捷方式到桌面就可以..._运行程序 找不到 汉字文件夹路径

随便推点

【软件工程导论】从已考完期末的角度记录软导常考内容_探索出的若干种-程序员宅基地

文章浏览阅读1.6k次。问题定义阶段必须回答的关键问题是“要解决的问题是什么?”,正确理解用户的真正需求。_探索出的若干种

宝塔面板更新网站访问PHP文件出现404_网页升级防问每天正常更新-程序员宅基地

文章浏览阅读7.2k次。今天因为需要通过宝塔面板更新了PHP版本, 出现了404的情况,我说奇了怪了怎么会404, 重装了Nginx, 重启了服务器, 还是同样的情况, 尝试了访问静态文件, 顺利打开。看到有各种各样的说法吧:宝塔更新Nginx配置有问题, 删除user.ini还有什么把站点删掉重来。。前者没用, 后两者没有解决本质问题。经过了一番研究, 发现是因为宝塔更新了php版本, 又关闭/卸载了旧的ph..._网页升级防问每天正常更新

1129, “Host ‘100.79.161.98‘ is blocked because of many connection errors_"django (1129, \"host '172.17.0.2' is blocked beca-程序员宅基地

文章浏览阅读105次。1129, "Host ‘100.79.161.98’ is blocked because of many connection errors;通常是mysql 连接数太多导致的解决:flush-hosts 清除缓存,mysql终端执行此命令即可修改mysq连接数限制show global variables like '%max_connect_errors%';set global max_connect_errors=1000;# 永久修改,修改配置文件,添加:max_conn_"django (1129, \"host '172.17.0.2' is blocked because of many connection error"

discuz如何修改主题列表页增加最后发表用户调用_discuz列表页最后发表在哪里-程序员宅基地

文章浏览阅读642次。首页有点问题,我觉得摘要实在太长了,我调整了一下<!--{if is_array($group['lastpost'])}--> <a href="forum.php?mod=redirect&tid=$group[lastpost][tid]&goto=lastpost#lastpost" class="xi2"><!--{e..._discuz列表页最后发表在哪里

uniapp苹果内购总结_uniapp 苹果内购-程序员宅基地

文章浏览阅读2.2k次。uniapp苹果内购相关总结_uniapp 苹果内购

python调用C++(仅限函数),ctypes调用so文件注意事项_python c++ so 依赖-程序员宅基地

文章浏览阅读3k次。单个.c文件生成.so:cd /d D:\Program Files (x86)\MinGW\bingcc "D:\VisulStudio\gccSPA\gccSPA\SolarPosAngle.c" -fPIC -shared -o "D:\VisulStudio\gccSPA\gccSPA\gccSPA.so"python中调用from ctypes import *aimHand..._python c++ so 依赖