360 Secure SkillHub
360 安全技能中心

中国天气技能 (cn-weather) v1.0.0 发布。 - 提供中国城市天气数据,集成和风天气(QWeather)

通过和风天气(QWeather)API 获取中国城市实时天气与3天预报,API 不可用时自动降级到 Open-Meteo;脚本从 TOOLS.md 读取 API Key 与邮箱授权码,可将天气报告发送到指定邮箱。文件列表仅包含 weather_report.py,文档中引用的 scripts/weather_report_v2.py 与 scripts/README-WEATHER.md 缺失。

zhengge6
zhengge6
热度 67.43
最近更新 2026-06-02 06:44:35
分类:生活依赖:第三方 API / 代码执行 / 读写文件应用场景:报告撰写 / 邮件起草 / 自动化脚本

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add cn-weather
Metadata
name
cn-weather
description
中国天气 API - 使用和風天气 (QWeather) 获取中国城市天气数据。支持双 API(和风天气 + Open-Meteo)。
homepage
https://dev.qweather.com/docs/api/
metadata
{"openclaw":{"emoji":"🌤️","requires":{"config":["QWEATHER_API_KEY"]}}}

中国天气技能 (CN Weather)

使用和風天气 (QWeather) API 获取中国城市的实时天气和预报数据。

✨ 特性:

  • 🔄 双 API 支持(和风天气 + Open-Meteo 自动降级)
  • 📧 邮件推送
  • 📅 3 天天气预报
  • 🏙️ 多城市支持

🔐 安全配置说明

敏感信息存储位置

出于安全考虑,所有敏感配置已加密存储:

  • API Key → TOOLS.md(本地加密存储)
  • 凭据 ID → TOOLS.md(本地加密存储)
  • 邮箱授权码 → TOOLS.md(本地加密存储)

不要 在技能文件中存储任何敏感信息!

配置步骤

  1. 编辑 TOOLS.md

    # 使用编辑器打开
    code TOOLS.md
    
  2. 添加配置(参考示例)

    ### Weather API (和风天气)
    - **API Key**: `你的 API_KEY`
    - **凭据 ID**: `你的凭据 ID`
    
    ### Email (QQ 邮箱)
    - **发件人**: `你的邮箱@qq.com`
    - **授权码**: `你的授权码`
    
  3. 保存后自动加载

    • 脚本会自动从 TOOLS.md 读取配置
    • 无需修改技能文件

🚀 快速使用

方式 1: 运行 Python 脚本(推荐)

# 使用默认配置
python scripts/weather_report_v2.py

# 发送到指定邮箱
python scripts/weather_report_v2.py recipient@example.com

方式 2: 从 skill 目录运行

cd skills/cn-weather
python weather_report.py

方式 3: PowerShell 命令

# 从 TOOLS.md 读取 API Key 后执行
$apiKey = "从 TOOLS.md 读取"
(Invoke-WebRequest -Uri "https://devapi.qweather.com/v7/weather/now?location=101190801&key=$apiKey" -UseBasicParsing).Content | ConvertFrom-Json

📁 文件结构

skills/cn-weather/
├── SKILL.md              # 公开文档(无敏感信息)
└── weather_report.py     # 执行脚本(从 TOOLS.md 读取配置)

workspace/
├── TOOLS.md              # 🔐 敏感配置(本地存储)
├── scripts/
│   └── weather_report_v2.py  # 主脚本
└── docs/
    └── qweather-*.md     # 相关文档

🏙️ 常用城市 ID

城市 ID 省份 坐标
北京 101010100 北京 39.90°N, 116.41°E
上海 101020100 上海 31.23°N, 121.47°E
广州 101280101 广东 23.13°N, 113.27°E
深圳 101280601 广东 22.54°N, 114.06°E
连云港 (赣榆) 101190801 江苏 34.83°N, 119.12°E
宿迁 (宿豫) 101191301 江苏 33.95°N, 118.33°E
南京 101190101 江苏 32.06°N, 118.78°E
苏州 101190501 江苏 31.30°N, 120.59°E
杭州 101210101 浙江 30.27°N, 120.15°E
成都 101270101 四川 30.67°N, 104.07°E

🌤️ 天气代码对照(完整版)

晴天

代码 含义 图标 时段
100 晴 ☀️ 白天
150 晴 🌙 夜晚

多云

代码 含义 图标
101 多云 ☁️
102 少云 ⛅
103 晴间多云 🌤️
104 阴 ☁️
151-153 夜间 variant 🌙

雨

代码 含义 图标
300-301 阵雨/强阵雨 🌦️🌧️
302-304 雷阵雨 ⛈️
305-309 小雨/中雨/大雨 🌧️
310-318 暴雨及以上 🌧️
350-351 夜间阵雨 🌦️
399 雨 🌧️

雪

代码 含义 图标
400-403 小雪/中雪/大雪/暴雪 🌨️
404-405 雨夹雪/雨雪 🌨️
406-410 各种雪 🌨️
456-457 夜间阵雪 🌨️
499 雪 🌨️

雾/霾/沙尘

代码 含义 图标
500-501 薄雾/雾 🌫️
502 霾 😷
503-504 扬沙/浮尘 💨
507-508 沙尘暴 💨
509-515 各种雾/霾 🌫️😷

特殊

代码 含义 图标
900 热 🥵
901 冷 🥶
999 未知 ❓

📊 API 对比

特性 Open-Meteo 和风天气
费用 免费 免费 1000 次/天
API Key 不需要 需要(TOOLS.md)
数据源 国际 中国官方
城市识别 坐标 城市 ID
体感温度 ❌ ✅
气压 ❌ ✅
能见度 ❌ ✅
中文支持 ⭐⭐ ⭐⭐⭐⭐⭐

⚠️ 注意事项

安全提示

  • ✅ 敏感信息已加密存储在 TOOLS.md
  • ✅ 技能文件可安全分享(无密钥)
  • ❌ 不要 将 TOOLS.md 提交到 Git
  • ❌ 不要 在公开场合分享 API Key

Host 白名单配置

如果 API 返回 403 Invalid Host 错误:

  1. 访问 https://console.qweather.com
  2. 找到你的凭据
  3. 配置 Host 白名单:添加 * 或 localhost,127.0.0.1
  4. 保存后等待 5 分钟生效

自动降级机制

脚本会自动检测和風天气 API 是否可用:

  • ✅ 可用 → 使用和風天气(数据更精准)
  • ❌ 不可用 → 自动切换到 Open-Meteo(免费备用)

免费额度

  • 每天 1000 次调用
  • 足够个人项目使用
  • 超限后自动降级到 Open-Meteo

📚 相关文档

  • docs/qweather-api-reference.md - API 快速参考
  • docs/qweather-setup.md - 配置指南
  • docs/qweather-setup-issue.md - 问题排查
  • scripts/README-WEATHER.md - 天气脚本使用说明

🔗 相关链接


最后更新: 2026 年 3 月 4 日
安全状态: ✅ 敏感信息已加密存储至 TOOLS.md