Python查询中文城市天气预报 openweathermap
天气预报是我们日常生活中非常重要的信息之一,通过查询天气预报可以帮助我们合理安排出行计划,选择合适的衣物等等。在这篇文章中,我将介绍如何使用Python查询中文城市的天气预报信息,其中天气预报数据来源于OpenWeatherMap。OpenWeatherMap是一个提供全球天气数据的平台,我们可以通过他们的API获取到准确的天气信息。
准备工作
在开始之前,我们需要先准备一些基本的工作,包括注册OpenWeatherMap的账号、获取API密钥等操作。
- 注册OpenWeatherMap账号
首先我们需要访问OpenWeatherMap的官方网站(https://home.openweathermap.org/),在网站上注册一个账号。
- 获取API密钥
注册完成之后,登录到OpenWeatherMap账号,在个人中心找到API密钥的设置,生成一个属于自己的API密钥。这个API密钥将在我们查询天气信息时使用。
使用Python查询中文城市天气预报
接下来,我们将使用Python编写一个脚本,通过OpenWeatherMap的API查询中文城市的天气预报信息。
import requests
def get_weather(city):
api_key = 'your_api_key' # 将your_api_key替换为你在OpenWeatherMap上获取的API密钥
url = f'http://api.openweathermap.org/data/2.5/weather?q={city}&appid={api_key}&lang=zh_cn' # 设置API请求的url
response = requests.get(url) # 发起GET请求获取天气信息
data = response.json() # 将返回的json数据转换为字典格式
if data['cod'] == 200:
weather = data['weather'][0]['description'] # 天气描述
temp = data['main']['temp'] - 273.15 # 温度(转换为摄氏度)
humidity = data['main']['humidity'] # 湿度
wind_speed = data['wind']['speed'] # 风速
print(f'{city}的天气:{weather}')
print(f'温度:{temp:.2f}℃')
print(f'湿度:{humidity}%')
print(f'风速:{wind_speed}m/s')
else:
print('未找到该城市的天气信息')
city = '北京'
get_weather(city)
在这段代码中,我们首先导入requests
模块,用于发送HTTP请求。然后定义了一个get_weather
函数,接收一个城市名称作为参数。在函数内部,我们使用API密钥和城市名称构建了请求的url,并发送GET请求获取天气信息。最后解析返回的json数据,提取出了天气描述、温度、湿度、风速等信息并打印出来。
运行结果
如果我们将上述代码保存为.py
文件并执行,那么将输出查询到的天气预报信息,以下是运行结果:
北京的天气:多云
温度:-3.00℃
湿度:92%
风速:1m/s
以上就是如何使用Python查询中文城市的天气预报信息,通过OpenWeatherMap的API获取到准确的天气数据。