跳到主要内容

天气查询

收藏0

查询任意城市或地点的当前天气与未来数日预报(温度、天气状况、降水概率、风速、湿度),无需 API Key,数据来自 Open-Meteo 免费接口。

让 AI 安装

Minsaroun最新版本 0.1.0更新于 2026-11-01下载 0 次

SKILL.md

天气查询#

查询指定城市/地点的实时天气和未来 1~7 天预报。数据源为 Open-Meteo(免费、无需 API Key)。

用法#

python3 weather.py "北京"
python3 weather.py "Tokyo" --days 3
python3 weather.py --lat 39.9 --lon 116.4 --days 2
  • 第一个参数为城市名(中文或英文),自动解析坐标;也可以直接用 --lat/--lon 指定经纬度。
  • --days N:预报天数,默认 1(含今天)。
  • --lang zh|en:输出语言,默认跟随城市语言。

输出示例#

北京 · 2026-10-31
晴 12°C(体感 11°C)  湿度 34%  西南风 12 km/h
明天 11-01:多云 8~16°C 降水概率 10%

机制#

  • 城市→坐标:Open-Meteo Geocoding API(https://geocoding-api.open-meteo.com/v1/search?name=<城市>&count=1&language=zh&format=json)。
  • 天气:Open-Meteo Forecast API(https://api.open-meteo.com/v1/forecast?latitude=&longitude=&current=temperature_2m,relative_humidity_2m,apparent_temperature,weather_code,wind_speed_10m,wind_direction_10m&daily=weather_code,temperature_2m_max,temperature_2m_min,precipitation_probability_max&timezone=auto&forecast_days=N)。
  • WMO weather code 映射为中文/英文天气状况描述。
  • 纯 Python 标准库(urllib),无第三方依赖;输出简洁,适合直接转述给用户。

隐私与安全#

  • 不收集任何个人信息;仅向 Open-Meteo 公共接口发起查询。
  • 不含任何密钥或账号凭据。

用途与依赖

作者没写,这些是平台读文件后整理的,以文件为准。

使用示例

请求:帮我看看北京明天到后天的天气,会不会下雨?

预期

我会运行 python3 weather.py "北京" --days 3,先通过地理编码接口把“北京”解析为坐标,再拉取当前天气和 3 天预报,然后回复类似:“北京 · 当前:晴 12°C(体感 11°C) 湿度 34% 风速 12 km/h;今天:晴 5~18°C 降水概率 0%;明天:多云 8~16°C 降水概率 10%;后天:小雨 7~13°C 降水概率 60%。”如果城市名查不到,我会告知找不到该地点,并请你换个写法或提供经纬度。

适用场景
  • 用户想知道某个城市现在天气怎么样
  • 用户询问某地未来几天会不会下雨、气温多少
  • 用户在做出行、通勤或活动安排前想先看天气预报
  • 用户给出了经纬度坐标,想查询该位置的天气
  • 用户用英文提问,希望得到英文天气描述
输入
  • 城市或地点名称(中文或英文)
  • 或者经纬度:--lat 与 --lon
  • 可选:预报天数 --days N(默认 1,含今天)
  • 可选:输出语言 --lang zh 或 --en
输出
  • 当前天气:天气状况、气温、体感温度、湿度、风速
  • 逐日预报:日期、天气状况、最低~最高气温、降水概率
  • 地点标注(城市名、省或州、国家)
  • 查询失败时的错误提示(如找不到地点、网络请求异常)
运行环境
Python 3(仅使用标准库 urllib、json、argparse)
依赖
无