Skip to content

bugrootof/weather-crawler

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

天气数据爬虫

基于 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

数据字段

每日天气数据

  • 城市、日期、最高气温、最低气温、天气状况、风向、风力

月度统计数据 (-m)

  • 城市、年月、平均高温、平均低温、极端高温、极端低温
  • 平均空气质量指数、空气最好/最差及日期

支持的城市

云南省16个地市州

昆明、曲靖、玉溪、保山、昭通、丽江、普洱、临沧、楚雄、红河、文山、西双版纳、大理、德宏、怒江、迪庆

其他城市

北京、上海、广州、深圳、杭州、成都、武汉、南京、西安、重庆

可在 config.py 中添加更多城市。

配置文件

编辑 config.py 可修改:

  • CITY_CODES / CITY_PINYIN: 城市配置
  • REQUEST_DELAY: 请求延迟(避免被封)
  • OUTPUT_FORMAT: 默认输出格式
  • HEADLESS: 无头浏览器模式

注意事项

  1. 请遵守目标网站的使用条款
  2. 建议设置适当的请求延迟
  3. 首次运行需要系统已安装 Chrome 浏览器

About

基于 `crawl4ai` 的天气数据爬虫,支持爬取指定区域、指定时间段的历史天气数据和月度统计数据。

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages