【Python】基于 Flask 的 Python 网页天气查询应用开发实践 - 天气 API 探索
3. 天气 API 探索
3.1 选择适合的天气 API
首先,我们需要一个提供天气信息的 API。有许多免费的天气 API 可供选择,例如 OpenWeatherMap,Weatherstack 等。你需要去他们的官方网站注册并获取一个 API 密钥。
3.2 使用 requests 发送网络请求
Python 的 requests 库可以帮助我们发送 HTTP 请求。首先,我们需要安装 requests 库:
pip install requests
然后,我们可以使用以下代码来发送一个 GET 请求:
import requests
response = requests.get('http://api.weatherapi.com/v1/current.json', params={
'key': 'YOUR_API_KEY',
'q': 'San Francisco'
})
data = response.json()
print(data)
这段代码会向 Weather API 发送一个请求,查询 San Francisco 的天气,并打印出返回的 JSON 数据。
3.3 解析 JSON 数据
上面的代码中,response.json()
方法会将返回的 JSON 数据解析为一个 Python 字典。我们可以通过这个字典来获取我们需要的信息,例如天气,温度等:
weather = data['current']['condition']['text']
temp_c = data['current']['temp_c']
print(f'Weather: {weather}, Temperature: {temp_c}°C')
3.4 封装天气查询功能
最后,我们可以将上述代码封装为一个函数,便于后续使用:
def query_weather(city):
response = requests.get('http://api.weatherapi.com/v1/current.json', params={
'key': 'YOUR_API_KEY',
'q': city
})
data = response.json()
weather = data['current']['condition']['text']
temp_c = data['current']['temp_c']
return weather, temp_c
这样,我们可以通过 query_weather('San Francisco')
来查询 San Francisco 的天气。
天气 API 探索部分就到这里,下一部分我们将开始编写我们的 Flask 应用。