qweather-city-weather
Use this skill primarily via the bundled script:
scripts/qweather_query.py
This makes the skill portable across machines and independent from a local Next.js service.
Prerequisites
- Python 3.10+ available
- Required QWeather API key:
- set
QWEATHER_API_KEY, or - pass
--api-key
- set
- Required QWeather API host:
- set
QWEATHER_API_HOST, or - pass
--api-host
- set
Default execution flow
- Search city candidates and get location IDs:
python3 scripts/qweather_query.py search-city --query "Hangzhou" --api-host "<QWEATHER_API_HOST>" --api-key "<QWEATHER_API_KEY>"
-
Pick best city by
id/name/adm1/adm2. -
Query current weather with location ID:
python3 scripts/qweather_query.py get-weather --location "101210101" --api-host "<QWEATHER_API_HOST>" --api-key "<QWEATHER_API_KEY>"
- Or run one-shot city -> weather:
python3 scripts/qweather_query.py city-weather --query "Hangzhou" --api-host "<QWEATHER_API_HOST>" --api-key "<QWEATHER_API_KEY>"
Script command reference
search-city- required:
--query - optional:
--number(default10)
- required:
get-weather- required:
--location
- required:
city-weather- required:
--query - optional:
--preferred-namefor exact city-name match
- required:
Global options for all subcommands:
--api-key--api-host--timeout(seconds, default5.0)
Output and error contract
- Success: JSON with
success: true - Failure: JSON with
success: false+error, process exits non-zero - Never guess city when no result; return explicit no-match failure
Direct API reference
For endpoint and payload details of the official QWeather API, read:
references/qweather-http-contract.md