--- name: geocoding description: 通过 wttr.in 查询城市坐标的知识和验证规则 --- # Geocoding(地理编码)参考 ## wttr.in 坐标查询 获取城市经纬度: ``` https://wttr.in/{城市名}?format=j1 ``` - 城市名支持中文(如 `北京`、`成都`)和英文(如 `Beijing`、`Chengdu`) - 返回 JSON 格式的完整天气数据,坐标在 `nearest_area[0]` 中 - 坐标字段:`latitude`、`longitude` - 额外信息:`areaName`、`country`、`population` ## 验证规则 获取到坐标后必须验证以下信息,避免张冠李戴: 1. **确认国家/地区正确** — 检查 `country[0].value`,如"成都"的 country 应为 "China" 2. **同名城市判断** — 如果 `nearest_area` 有多条,按 population 大小取最可能的目标 3. **中文输入优先用中文查** — wttr.in 原生支持中文名解析,比先转英文更准确 4. **结果存疑时用 skill("msn-weather-api") 多看细节** ## 已知边界情况 - 小城市名可能匹配到其他国家的同名地点(如"长春"→ 印度尼西亚也有长春),需要核对 country - 一些城市名可能有多个行政区同名(如"济南"确保是中国山东济南) - wttr.in 是一个天气网站,它的地理编码数据偏向人口多的城市