背景介绍
随着全球范围内的城市化加速,用户对实时天气信息的需求日益增长。本项目旨在实现一个小型城市天气信息查询系统,用户输入城市名称后,程序可获取该城市当天的温度、湿度等天气数据。该系统可独立运行,仅需本地环境支持,无需依赖第三方服务。
思路分析
- 请求数据源:使用
requests库发送HTTP请求,通过requests.get()获取天气数据,例如从天气API(如OpenWeatherMap)获取JSON格式的数据。 - 数据解析:解析JSON响应,提取目标字段(如温度、湿度),并将其格式化为用户可读的文本输出。
- 参数配置:设置默认城市参数,例如在请求中指定
city字段,或者使用环境变量配置默认城市。
代码实现
import requests
def get_weather(city_name):
"""
获取指定城市当天的天气信息
参数:
city_name (str): 输入的城市名称
返回:
dict: 包含温度和湿度的天气信息
"""
# 发送GET请求到天气API
response = requests.get(f"https://api.weatherapi.com/v2/forecast?key=your_api_key&location={city_name}")
# 解析JSON响应
weather_data = response.json()
# 从数据中提取目标字段
temperature = weather_data['current']['temp'] # 示例字段,需替换为实际字段
humidity = weather_data['current']['humidity'] # 示例字段,需替换为实际字段
# 格式化输出
return {
'temperature': f"{temperature}℃",
'humidity': f"{humidity}%"
}
# 示例使用
if __name__ == "__main__":
city = input("请输入城市名称:") or "北京"
result = get_weather(city)
print(f"天气温度为 {result['temperature']}℃,湿度为 {result['humidity']}%。")
总结
本项目通过Python的requests库实现了城市天气信息的查询功能,具有良好的可维护性和可运行性。用户可根据实际情况替换天气API的key值,并调整参数配置。程序支持独立运行,可直接部署于本地环境,无需依赖第三方服务。