基于 crawl4ai 的天气数据爬虫,支持爬取指定区域、指定时间段的历史天气数据和月度统计数据。
- 🌍 支持多城市爬取(已预置云南省16个地市州)
- 📅 支持指定日期范围
- 📊 支持每日天气数据和月度统计数据
- 💾 支持 CSV 和 XLSX 两种导出格式
- ⚙️ 高度可配置,支持命令行参数和配置文件
pip install -r requirements.txt# 爬取玉溪最近7天的每日天气
python main.py -c 玉溪
# 爬取多个城市
python main.py -c 昆明 玉溪 大理
# 指定日期范围
python main.py -c 玉溪 -s 2024-01-01 -e 2024-12-31
# 爬取月度统计数据
python main.py -c 玉溪 -s 2024-01-01 -e 2024-12-31 -m
# 导出为Excel格式
python main.py -c 玉溪 -f xlsx| 参数 | 说明 | 示例 |
|---|---|---|
-c, --cities |
城市列表 (必填) | -c 昆明 玉溪 |
-s, --start-date |
开始日期 | -s 2024-01-01 |
-e, --end-date |
结束日期 | -e 2024-12-31 |
-f, --format |
输出格式 (csv/xlsx) | -f xlsx |
-o, --output |
输出目录 | -o ./data |
-m, --monthly |
爬取月度统计数据 | -m |
-v, --verbose |
显示详细日志 | -v |
- 城市、日期、最高气温、最低气温、天气状况、风向、风力
- 城市、年月、平均高温、平均低温、极端高温、极端低温
- 平均空气质量指数、空气最好/最差及日期
昆明、曲靖、玉溪、保山、昭通、丽江、普洱、临沧、楚雄、红河、文山、西双版纳、大理、德宏、怒江、迪庆
北京、上海、广州、深圳、杭州、成都、武汉、南京、西安、重庆
可在 config.py 中添加更多城市。
编辑 config.py 可修改:
CITY_CODES/CITY_PINYIN: 城市配置REQUEST_DELAY: 请求延迟(避免被封)OUTPUT_FORMAT: 默认输出格式HEADLESS: 无头浏览器模式
- 请遵守目标网站的使用条款
- 建议设置适当的请求延迟
- 首次运行需要系统已安装 Chrome 浏览器