背景介绍
随着城市化和信息化的发展,用户对实时天气数据的需求日益增长。本项目旨在实现一个简单但功能强大的城市天气查询程序,通过Python的requests库实现网络请求,以本地环境即可运行,并输出JSON格式的天气信息。
思路分析
- 网络请求的实现
使用requests.get()发送HTTP GET 请求到预先定义的天气API接口,例如从某公共气象数据平台获取数据。 - 解析JSON数据
将响应内容解析为字典形式,提取温度和湿度等关键信息。 - 错误处理机制
添加异常处理逻辑,避免在请求失败时抛出异常或处理错误信息。
代码实现
import requests
def get_city_weather(city):
try:
response = requests.get(f"http://weatherapi.com/{city}.json", timeout=3)
response.raise_for_status() # 检查HTTP状态码
# 解析JSON响应
weather_data = response.json()
if 'temp' in weather_data and 'humidity' in weather_data:
print(f"当前天气温度为{weather_data['temp']}°C,湿度为{weather_data['humidity']}%。")
else:
print("请求失败或数据不可用,请重新尝试。")
except requests.exceptions.RequestException as e:
print(f"请求失败: {e}.请检查网络连接。")
总结
本项目通过Python的requests库实现了城市天气的网络请求功能,能够处理本地环境中的JSON数据并输出结果。关键点包括:
– 使用requests.get()发送HTTP请求,并处理响应中的JSON内容。
– 添加异常处理逻辑以确保程序的健壮性。
可运行性说明
该代码可在本地环境中运行,通过终端命令(例如python weather_app.py)执行。运行时会根据输入的city参数输出对应的城市天气信息。