📜  Python | 使用openweathermap API查找任何城市的当前天气(1)

📅  最后修改于: 2023-12-03 15:04:10.339000             🧑  作者: Mango

Python | 使用openweathermap API查找任何城市的当前天气

介绍

openweathermap是一个提供实时天气数据的API,通过它我们可以查找任何城市的实时天气情况。

本文将介绍如何使用Python调用openweathermap API,查找任何城市的当前天气。

步骤
1. 获取API Key

我们需要先注册开放天气数据的开发者账户,获取API Key。注册地址:https://home.openweathermap.org/users/sign_up

注册时需要填写基本信息,然后激活账户。登录后,我们可以在https://home.openweathermap.org/api_keys中找到我们的API Key。

2. 安装requests库

我们使用Python的requests库来向openweathermap发出API请求,所以我们需要先安装这个库。可以通过以下命令来安装:

pip install requests
3. 编写Python脚本

接下来我们就可以开始编写Python脚本来获取我们所要查询的城市的实时天气数据了。

我们可以使用以下代码,填写相应的API Key和城市名称来获取实时天气数据:

import requests

API_KEY = "<YOUR_API_KEY>"
city_name = "<CITY_NAME>"

url = f"http://api.openweathermap.org/data/2.5/weather?q={city_name}&appid={API_KEY}&units=metric"

response = requests.get(url)

if response.status_code == 200:
    # 获取JSON数据
    data = response.json()

    # 解析JSON数据
    temp = data["main"]["temp"]
    description = data["weather"][0]["description"]

    # 输出结果
    print(f"城市: {city_name}")
    print(f"温度: {temp}℃")
    print(f"天气情况: {description}")
else:
    print("未找到该城市的天气数据")

在这段代码中,我们首先定义了API Key和城市名称(在实际应用中需要替换为自己的API Key和城市名称)。

然后,我们使用requests库构造了一个GET请求,向openweathermap API发送请求,获得实时天气数据。这里我们使用了f-string来构造请求URL,使得代码更加简洁。

接下来,我们判断HTTP响应的状态码为200(HTTP状态码200表示请求正常完成)。 如果状态码为200,则说明已经成功获取了实时天气数据,我们通过解析返回的JSON数据,获取当前城市的温度和天气情况,并将结果输出。 如果状态码不为200,则说明未找到该城市的天气数据,我们输出相应的提示信息。

结论

通过以上步骤,我们成功地使用Python调用了openweathermap API,查找了任何城市的当前天气。

这个简单的示例可以帮助我们进一步了解API使用和JSON数据解析。也可以根据这个示例,自己开发更加复杂的天气应用程序。