利用Python中pandas库的read_html功能从网站查历史天气 (q-weather.info)获取历史气象数据,并使用tkinter库实现窗口可视化。
代码如下:
1.首先导入必要的库:
import tkinter as tk
from tkinter import messagebox
import pandas as pd
2.定义一个用法,使用户可以查看所有气象基准站(截至2018年,来源:2018年 中国基准、基本气象站 站点信息_昆明市气象站点站号-CSDN博客)
def namelist():
error_label.config(text="")
messagebox.showinfo("基站名录",'#这里写入基站名录')
3.为方便用户使用,提供根据城市查询站点的功能:同样是定义一个用法,从台站编号.xlsx中获取相关信息,同时如果出现错误,显示错误信息。(文件附文章末)
def sake():
error_label.config(text="")
def sss():
error_label.config(text="")
city_name = city_name_entry.get()
try:
df = pd.read_excel('台站编号.xlsx')
name = df.loc[df['city'] == city_name, 'name']
if not name.empty:
message_str = "\n".join(f"{index}: {value}" for index, value in name.items())
messagebox.showinfo("成功",message_str)
else:
messagebox.showinfo("失败", '未匹配到相应站点')
except Exception as e:
error_label.config(text=str(e))
root1 = tk.Tk()
root1.title("城市对应台站查询")
tk.Label(root1, text="请输入城市名字:").grid(row=0, column=0)
city_name_entry = tk.Entry(root1)
city_name_ent