使用Python查詢國內 COVID-19 疫情
首先,我們使用
Tkinter
庫使我們的
可以圖形化顯示。
使用
requests
庫從 丁香園 獲取資料。
然後我們將在這種情況下顯示我們需要的資料 “當前確診人數”,“總確診人數”。
需求和安裝
ssh客戶端為:MobaXterm,因為它支援X11-Forwarding
系統: 8 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 = " # 獲取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之後,會看到獲取的資料啦。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69901823/viewspace-2844414/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Python中使用MySQL模糊查詢的方法PythonMySql
- python配置使用國內源Python
- 【COVID-19中國疫情地圖】專案詳細介紹地圖
- MongoDB查詢內嵌文件MongoDB
- python天氣查詢Python
- oracle查詢語句查詢增加一列內容Oracle
- sqlalchemy在python中的使用(關於查詢)二SQLPython
- mysql求交集:UNION ALL合併查詢,inner join內連線查詢,IN/EXISTS子查詢MySql
- MySQL內連線查詢語句MySql
- ubuntu 終端內查詢/搜尋Ubuntu
- python 當中的模糊查詢Python
- python實現查詢糾錯Python
- python二分查詢模板Python
- Python小技巧 - 子串查詢Python
- Python模組查詢路徑Python
- COVID-19全球調查報告:對內部業務的影響
- UserService 查詢使用者查詢許可權 isGlobalQuery分析
- 在Linux中,如何使用grep命令查詢檔案中的內容?Linux
- Laravel中使用ElasticSearch查詢附近2公里以內的店鋪LaravelElasticsearch
- 教你使用SQLite 子查詢SQLite
- mybatis-plus 使用In查詢MyBatis
- 2022年春節後這波疫情對於國內SAP諮詢行業的影響行業
- 怎麼查詢python裝在哪裡Python
- python檔案查詢之find命令Python
- centos vim怎麼查詢檔案內容CentOS
- MyBatis使用四(查詢詳解)MyBatis
- BeautifulSoup使用手冊(查詢篇)
- Oracle OCP(08):使用子查詢Oracle
- SQL查詢的:子查詢和多表查詢SQL
- 檔案批次查詢複製匯出,按檔名批次查詢檔案,按檔案內容批次查詢檔案
- 《COVID-19重慶市疫情》專案詳細介紹
- mysql-分組查詢-子查詢-連線查詢-組合查詢MySql
- Python—Django:關於在Django框架中對資料庫的查詢函式,查詢集和關聯查詢PythonDjango框架資料庫函式
- 用 python 製作全國身份證號驗證及查詢系統Python
- python for迴圈遍歷位置的查詢Python
- Algorithm-search 查詢演算法 pythonGo演算法Python
- python查詢mysql中文亂碼問題PythonMySql
- Python字串string的查詢和替換Python字串