使用Python查询国内 COVID-19 疫情
有时我们只是想要一个速的工具来告诉当前疫情的情况,我们只需要最少的数据。 使用Python语言和tkinter图形化显示数据。 |
首先,我们使用 Tkinter
库使我们的脚本可以图形化显示。
使用 requests
库从 丁香园 获取数据。
然后我们将在这种情况下显示我们需要的数据 “当前确诊人数”,“总确诊人数”。
需求和安装
ssh客户端为:MobaXterm,因为它支持X11-Forwarding
系统:Centos8 Minimal
Python版本:Python3.6.8
需要用到的库:requests
, json
, tkinter
, time
下面来安装xorg,用来在远程终端中打开图形化界面,安装python3-tkinter来创建GUI界面:
[root@localhost data]# yum -y install xorg-x11-xauth xorg-x11-utils python3-tkinter
上脚本
下面创建python脚本:
[root@localhost data]# touch gui.py [root@localhost data]# chmod +x gui.py [root@localhost data]# vim gui.py#!/usr/bin/python3# 导入time, requests, json, tkinter库 import time import requests import json from tkinter import *# 创建一个窗口 window = Tk()# 窗口标题为“Covid-19” window.title("Covid-19")# 窗口大小为600px * 130px window.geometry('600x130')# 创建label 1,并创建初始信息 lbl = Label(window, text = "The number of confirmed cases in China: ....") # label窗格占用第1列,第1行,靠左对齐。 lbl.grid(column = 1, row = 0, sticky = W)# 创建label 2,并创建初始信息 lbl1 = Label(window, text = "Cumulative number of confirmed cases in China: ....") lbl1.grid(column = 1, row = 1, sticky = W)# 创建label 3,并创建初始信息,用来显示时间的。 lbl2 = Label(window, text = "Data update time: ....") lbl2.grid(column = 1, row = 3, sticky = W)# 创建label 4,并创建初始信息,用来显示是否刷新。 lbl3 = Label(window, fg = 'green', text = "") lbl3.grid(column = 1, row = 4, sticky = W)# 定义一个点击事件 def clicked():# 制定API接口的地址url = "https://lab.isaaclin.cn/nCoV/api/overall"# 获取url地址page = requests.get(url)# 将json数据载入内存data = json.loads(page.text)#下面4个变量用来将API中的时间戳转化为时间。tm = data["results"][0]["updateTime"]timeStamp = float(tm/1000)timeArray = time.localtime(timeStamp)updatetime = time.strftime("%Y-%m-%d %H:%M:%S", timeArray)# 当点击时,获取 currentConfirmedCount 的值,因为text里面只能用str字符串,所以需要将证书类型的数字转化为字符串。lbl.configure(text ="The number of confirmed cases in China: " + "%s" %(data["results"][0]["currentConfirmedCount"]))lbl1.configure(text ="Cumulative number of confirmed cases in China: " + "%s" %(data["results"][0]["confirmedCount"]))lbl2.configure(text ="Data update time: " + updatetime)lbl3.configure(text ="State: Refresh")# 创建一个按钮,用来刷新数据。 btn = Button(window, text ="Refresh", command = clicked) # 按钮的位置在第2列,第5行。 btn.grid(column = 2, row = 5)# 显示窗口 window.mainloop()
解释:
sticky =
对齐方式的值有四个,N, S, W, E,代表着东西南北、上下左右。
执行脚本,输出如下内容:
[root@localhost data]# ./gui.py
点击Refresh之后,会看到获取的数据啦。
使用Python查询国内 COVID-19 疫情相关推荐
- 用python写了个全国疫情中高风险地区查询
最近用python写了个全国疫情中高风险地区查询的爬虫代码,分享给大家一起交流,希望得到不同思路的指教,让代码更简洁,运行效率更高. 总体思路 1.找到可供查询的源网站 2.分析.获取查询的API 3 ...
- python 绘制新冠肺炎疫情地图
参考链接: (1)实时更新|新冠肺炎疫情地图 https://news.sina.cn/zt_d/yiqing0121 (2)实时的可视化疫情地图 https://blog.csdn.net/weix ...
- covid 19如何重塑美国科技公司的工作文化
未来 , 技术 , 观点 (Future, Technology, Opinion) Who would have thought that a single virus would take dow ...
- stata中心化处理_带有stata第2部分自定义配色方案的covid 19可视化
stata中心化处理 This guide will cover an important, yet, under-explored part of Stata: the use of custom ...
- python可视化来分析全国疫情
很长一段时间在python下出图都是使用matplotlib,其好处就是应用比较广泛,文档很容易找,不过出的图微显丑陋.pyecharts 是百度的echarts基于python的实现,可以很方便的直 ...
- 国内勒索病毒疫情严重 每天十多万台电脑被感染
2019独角兽企业重金招聘Python工程师标准>>> 4月10日消息,国内安全团队近日发出安全警报,报告称国内勒索病毒疫情非常严峻,政府.企业和个人用户都在被攻击之列,而系统漏洞是 ...
- python查询最高分_精通 Oracle+Python,第 1 部分:查询最佳应践
作者:Przemyslaw Piotrowski 首先,熟悉 Oracle-Python 连接性的基本概念 2007 年 9 月发布 参见系列目录 在 Python 做事方式的核心原则中,有一个规定是 ...
- python查询最高分_精通 Oracle+Python,第 1 部分:查询最佳应践
在 Python 做事方式的核心原则中,有一个规定是要求具有到 API 的高级接口.数据库 API(在此例中为 Oracle API)就是一个例子.使用 Computronix 的 cx_Oracle ...
- 跟李宁老师学Python视频课程(19):Python GUI库:PyQt5-李宁-专题视频课程
跟李宁老师学Python视频课程(19):Python GUI库:PyQt5-639人已学习 课程介绍 本系列课程一共20套,每一套视频课程会深入讲解Python的一类知识点.Pyth ...
最新文章
- (转)zookeeper理解
- vue在js上处理后台返回的数组_vuejs 根据后台返回数组,渲染图片路径
- 消息队列之JMS和AMQP对比
- Linux写时拷贝技术(copy-on-write)
- sql server实用工具sql prompt的安装与注册
- Reapter 中客户端控件和服务器端控件的选择
- python客户端服务器_Python客户端和服务器ch
- python缠论代码_缠论dll(czsc - 缠中说禅技术分析工具)
- 基于中间件的开发---中间件技术
- Mac下Chrome 浏览器右键菜单需双击的问题
- 第四百三十五章 灭龙魔宫
- arXiv2022-12 | FLIP:Scaling Language-Image Pre-training via Masking
- 基于加密短信验证码的蓝牙智能锁设计
- 随机森林算法: 实战基于随机森林的医疗费用分析与建模预
- paip QQ音乐导出歌单总结
- JSAPI支付——H5网页端调起支付接口
- 银联在线网关支付,快速接入指南
- 海南行,阳光,沙滩,椰树[2007.2.1~2007.2.5]
- 计算机考试的时候有文字解析吗,计算机考试解析.doc
- 支付宝支持给微信好友转账?