《用 Flask 构建天气查询 API:从基础搭建到实战优化》
一、引言:为什么选择 Flask 构建 API?
在 Python 的 Web 框架中,Flask 以轻量、灵活著称。它不强制使用特定的项目结构,也不捆绑 ORM 或模板引擎,极适合构建小型服务或微服务架构中的 API。
而天气查询,作为一个典型的公共数据接口,不仅适合教学演示,也能在实际项目中发挥作用(如旅游推荐、农业监测、智能家居等场景)。
这篇文章将带你从零开始,用 Flask 构建一个天气查询 API,并分享我在项目实践中的经验与思考。
二、项目准备:环境搭建与依赖安装
1. 创建虚拟环境
python -m venv venv
source venv/bin/activate # Windows 使用 venv\Scripts\activate
2. 安装 Flask 与请求库
pip install flask requests
3. 项目结构建议
weather_api/
├── app.py
├── config.py
├── services/
│ └── weather_service.py
├── utils/
│ └── response_format.py
└── requirements.txt
结构清晰有助于后期维护与扩展。
三、核心功能:天气查询接口设计
我们将使用 OpenWeatherMap 提供的免费 API 获取天气数据。
1. 配置 API 密钥
# config.py
OPENWEATHER_API_KEY = '你的API密钥'
OPENWEATHER_BASE_URL = 'https://api.openweathermap.org/data/2.5/weather'
2. 编写天气服务模块
# services/weather_service.py
import requests
from config import OPENWEATHER_API_KEY, OPENWEATHER_BASE_URL
def get_weather_by_city(city_name):
params = {
'q': city_name,
'appid': OPENWEATHER_API_KEY,
'units': 'metric',
'lang': 'zh_cn'
}
response = requests.get(

最低0.47元/天 解锁文章
1347

被折叠的 条评论
为什么被折叠?



