有时我们只是想要一个速的工具来告诉当前疫情的情况,我们只需要最少的数据。 使用Python语言和tkinter图形化显示数据。

首先,我们使用 Tkinter 库使我们的脚本可以图形化显示。

使用 requests 库从 丁香园 获取数据。

然后我们将在这种情况下显示我们需要的数据 “当前确诊人数”,“总确诊人数”。

需求和安装

ssh客户端为:MobaXterm,因为它支持X11-Forwarding

系统:Centos8 Minimal

Python版本:Python3.6.8

需要用到的库:requestsjsontkintertime

下面来安装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 疫情相关推荐

  1. 用python写了个全国疫情中高风险地区查询

    最近用python写了个全国疫情中高风险地区查询的爬虫代码,分享给大家一起交流,希望得到不同思路的指教,让代码更简洁,运行效率更高. 总体思路 1.找到可供查询的源网站 2.分析.获取查询的API 3 ...

  2. python 绘制新冠肺炎疫情地图

    参考链接: (1)实时更新|新冠肺炎疫情地图 https://news.sina.cn/zt_d/yiqing0121 (2)实时的可视化疫情地图 https://blog.csdn.net/weix ...

  3. covid 19如何重塑美国科技公司的工作文化

    未来 , 技术 , 观点 (Future, Technology, Opinion) Who would have thought that a single virus would take dow ...

  4. stata中心化处理_带有stata第2部分自定义配色方案的covid 19可视化

    stata中心化处理 This guide will cover an important, yet, under-explored part of Stata: the use of custom ...

  5. python可视化来分析全国疫情

    很长一段时间在python下出图都是使用matplotlib,其好处就是应用比较广泛,文档很容易找,不过出的图微显丑陋.pyecharts 是百度的echarts基于python的实现,可以很方便的直 ...

  6. 国内勒索病毒疫情严重 每天十多万台电脑被感染

    2019独角兽企业重金招聘Python工程师标准>>> 4月10日消息,国内安全团队近日发出安全警报,报告称国内勒索病毒疫情非常严峻,政府.企业和个人用户都在被攻击之列,而系统漏洞是 ...

  7. python查询最高分_精通 Oracle+Python,第 1 部分:查询最佳应践

    作者:Przemyslaw Piotrowski 首先,熟悉 Oracle-Python 连接性的基本概念 2007 年 9 月发布 参见系列目录 在 Python 做事方式的核心原则中,有一个规定是 ...

  8. python查询最高分_精通 Oracle+Python,第 1 部分:查询最佳应践

    在 Python 做事方式的核心原则中,有一个规定是要求具有到 API 的高级接口.数据库 API(在此例中为 Oracle API)就是一个例子.使用 Computronix 的 cx_Oracle ...

  9. 跟李宁老师学Python视频课程(19):Python GUI库:PyQt5-李宁-专题视频课程

    跟李宁老师学Python视频课程(19):Python GUI库:PyQt5-639人已学习 课程介绍         本系列课程一共20套,每一套视频课程会深入讲解Python的一类知识点.Pyth ...

最新文章

  1. (转)zookeeper理解
  2. vue在js上处理后台返回的数组_vuejs 根据后台返回数组,渲染图片路径
  3. 消息队列之JMS和AMQP对比
  4. Linux写时拷贝技术(copy-on-write)
  5. sql server实用工具sql prompt的安装与注册
  6. Reapter 中客户端控件和服务器端控件的选择
  7. python客户端服务器_Python客户端和服务器ch
  8. python缠论代码_缠论dll(czsc - 缠中说禅技术分析工具)
  9. 基于中间件的开发---中间件技术
  10. Mac下Chrome 浏览器右键菜单需双击的问题
  11. 第四百三十五章 灭龙魔宫
  12. arXiv2022-12 | FLIP:Scaling Language-Image Pre-training via Masking
  13. 基于加密短信验证码的蓝牙智能锁设计
  14. 随机森林算法: 实战基于随机森林的医疗费用分析与建模预
  15. paip QQ音乐导出歌单总结
  16. JSAPI支付——H5网页端调起支付接口
  17. 银联在线网关支付,快速接入指南
  18. 海南行,阳光,沙滩,椰树[2007.2.1~2007.2.5]
  19. 计算机考试的时候有文字解析吗,计算机考试解析.doc
  20. 支付宝支持给微信好友转账?

热门文章

  1. 工资8000与80000的区别:这个能力值得你重视!
  2. 为什么C语言不会过时?
  3. 用Python预测收入,来看看你的收入到底应该是多少?
  4. 一道腾讯面试题:厉害了我的杯
  5. 使用 RPI.GPIO 模块的脉宽调制(PWM)功能
  6. windows安装redis数据库
  7. 详解|工业机器人内部机构详解
  8. 基础 | 深度学习与神经网络-介绍
  9. 14 类编程题解法总结
  10. 最小二乘法的本质是什么?