360 Secure SkillHub
360 安全技能中心

Yr Weather

通过 MET Norway(yr.no)免费接口,按用户提供的纬度/经度获取当前天气与未来预报,并可输出次日天气摘要;附带常用城市坐标表、单元测试与模块化服务层,无默认坐标,调用时须显式传入位置。

brandon2255p
brandon2255p
热度 82.24
最近更新 2026-05-11 17:27:24
分类:生活依赖:代码执行 / 第三方 API应用场景:旅行 / API 集成

安装技能

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

执行命令安装此 skill: npx secure-skills-cli add yr-weather
Metadata
name
yr-weather
description
Fetch weather forecasts from the Norwegian Meteorological Institute (MET) using the yr.no API. Use when the user asks for weather information, forecasts, temperature, precipitation, wind conditions, or any weather-related queries for specific locations. Supports coordinates-based lookups and returns current conditions plus forecasts. REQUIRES latitude/longitude - no defaults. See common locations table.

Yr.no Weather

Get weather forecasts from MET Norway via yr.no API (free, no key).

Quick Start

# Current weather + forecast (requires lat/lon)
python3 {baseDir}/scripts/weather.py <lat> <lon> [altitude]

# Examples from common locations:
python3 {baseDir}/scripts/weather.py -33.9288 18.4174   # Cape Town
python3 {baseDir}/scripts/weather.py -33.8688 151.2093  # Sydney
python3 {baseDir}/scripts/weather.py 51.5074 -0.1278    # London

# Tomorrow's summary (requires lat/lon)
python3 {baseDir}/scripts/tomorrow.py <lat> <lon>

# Run tests
python3 -m unittest discover {baseDir}/tests

Tests

  • Unit tests mock API calls (no network).
  • Sample data in scripts/tests/data/.
  • Run: cd {baseDir}/scripts && python3 ../tests/test_*.py

Common Locations

City Lat Lon
Cape Town -33.9288 18.4174
Johannesburg -26.2041 28.0473
Durban -29.8587 31.0218
Sydney -33.8688 151.2093
London 51.5074 -0.1278
New York 40.7128 -74.0060
Tokyo 35.6762 139.6503

Structure

scripts/
├── yr_service.py    # API calls (tested/mocked)
├── utils.py         # Emoji/symbol helpers
├── weather.py       # Current + forecast CLI
├── tomorrow.py      # Tomorrow summary CLI
└── tests/data/      # Sample JSON
tests/
├── test_weather.py
└── test_service.py

Standalone Repo

Install via pip: pip install git+https://github.com/brandoncrabpi/yr-weather.git

  • yr-weather -33.9288 18.4174
  • Tagged: v1.0.0

Usage Terms

  • User-Agent required (included).
  • Cache 10min+ per location.
  • Credit: "Data from MET Norway".

Refactored for production: no defaults, tests, modular service.