网淘吧来吧,欢迎您!

Weathercli

2026-03-31 新闻来源:网淘吧 围观:18
电脑广告
手机广告

天气命令行界面

使用weathercli命令获取全球任意地点的天气信息。

命令

当前天气

获取实时天气状况,包括温度、湿度、风和降水。

Weathercli

weathercli current "<location>"
weathercli current "<location>" --json

返回:当前温度、"体感"温度、湿度百分比、风速/风向、气压、云量、紫外线指数、降水、天气状况描述以及当地时区的时间戳。

天气预报

获取每日或每小时天气预报。

# Daily forecast (default: 7 days, max: 16)
weathercli forecast "<location>" --days <N>

# Hourly forecast (max: 384 hours)
weathercli forecast "<location>" --hourly --hours <N>

# JSON output for parsing
weathercli forecast "<location>" --json

返回:对于每天/每小时:温度(最高/最低或当前值)、天气状况、降水概率和降水量、风速/风向、紫外线指数、日出/日落时间(仅限每日预报)。

地点搜索

查找地点的坐标和时区信息。

weathercli search "<location>"
weathercli search "<location>" --json

返回:地点名称、坐标(纬度/经度)、国家、地区/州、时区。

地点格式

地点输入灵活,可自动进行地理编码:

  • 城市名称:"伦敦","东京","纽约"
  • 城市 + 国家:"法国巴黎","德国柏林"
  • 城市 + 州/地区:"俄勒冈州波特兰","加泰罗尼亚巴塞罗那"
  • 易混淆名称:添加国家/地区以确保准确性

选项

  • --json- 输出结构化JSON(推荐用于解析)
  • --no-color- 禁用彩色输出(用于纯文本解析)
  • --days N- 预报天数(1-16,默认:7)
  • --hourly- 显示逐小时预报而非每日预报
  • --hours N- 逐小时预报的小时数(1-384)
  • --verbose- 显示详细的请求信息

输出格式

人类可读格式(默认)

温度值采用颜色编码,附带表情符号和单位。时间显示为当地时区时间。

JSON结构

当前天气:

{
  "location": {
    "name": "Tokyo",
    "latitude": 35.6895,
    "longitude": 139.6917,
    "country": "Japan",
    "timezone": "Asia/Tokyo"
  },
  "time": "2026-01-12T18:45:00+09:00",
  "temperature": 4.7,
  "apparent": 1.8,
  "humidity": 66,
  "wind_speed": 3.6,
  "wind_direction": 135,
  "condition": "Clear sky",
  "weather_code": 0,
  "precipitation": 0,
  "cloud_cover": 0,
  "pressure": 1015.2,
  "uv_index": 0
}

预报:

{
  "location": { ... },
  "daily": [
    {
      "date": "2026-01-12",
      "temp_max": 12.1,
      "temp_min": 4.3,
      "condition": "Slight rain",
      "precip_prob": 75,
      "precipitation": 1.5,
      "sunrise": "2026-01-12T08:04:00+09:00",
      "sunset": "2026-01-12T16:45:00+09:00",
      "wind_speed_max": 15.3,
      "wind_direction": 202,
      "uv_index_max": 2.4
    }
  ]
}

使用指南

适用场景

  • 用户询问天气、温度、预报或气象状况时
  • 规划活动需要天气数据时
  • 查询是否会下雨、下雪或放晴时
  • 为旅行计划获取气候信息时
  • 需要日出/日落时间时
  • 比较不同地区天气状况时

地点处理

  1. 若用户提供明确地点,则直接采用该地点信息
  2. 如果存在歧义(例如"波特兰"),请要求澄清或补充上下文
  3. 如果未找到地点,建议检查拼写或添加国家信息
  4. 对于坐标,请先使用搜索命令进行验证

解析输出

  • 始终使用--json格式以便程序化解析
  • 提取温度天气状况风速用于快速摘要
  • 检查降水概率了解降雨可能性
  • 使用日出/日落时间安排白天活动
  • 天气代码遵循世界气象组织标准(0-99)

最佳实践

  • 旅行规划建议请求3-5天(非完整16天)
  • 使用逐小时预报进行详细日程规划
  • 查看体感温度以了解实际舒适度
  • 紫外线指数>3时建议采取防晒措施
  • 风速>20公里/小时需提示有风

示例

快速天气查询:

weathercli current "London" --json | jq '.temperature, .condition'

旅行周度预报:

weathercli forecast "Barcelona" --days 5 --json

今日逐小时详情:

weathercli forecast "Seattle" --hourly --hours 24

查询多个城市:

for city in "Tokyo" "London" "New York"; do
  weathercli current "$city" --json | jq -r '"\(.location.name): \(.temperature)°C, \(.condition)"'
done

查找精确位置:

weathercli search "Springfield" --json

注意事项

  • 无需API密钥- 使用免费的Open-Meteo API
  • 全球覆盖- 适用于全球任意地点
  • 温度单位为摄氏度- 需要时可转换(°F = °C × 9/5 + 32)
  • 风速(公里/小时)- 如需转换为英里/小时(乘以0.621)
  • 本地时区- 所有时间自动转换
  • 频率限制- 适用于个人/代理用途;避免频繁请求
  • 准确度- 数据源自多个气象来源
  • 更新频率- 当前天气每15分钟更新一次
  • 离线状态- 需要网络连接

错误处理

未找到指定位置:

Error: location not found: Atlantis

→ 检查拼写,尝试添加国家/地区信息

网络错误:

Error: weather API error: network timeout

→ 稍后重试

输入无效:

Error: invalid days value

→ 检查--days参数需在1-16之间

安装

天气命令行界面无法使用:

# Via Go
go install github.com/pjtf93/weathercli/cmd/weathercli@latest

# Or download binary from releases
# https://github.com/pjtf93/weathercli/releases

免责申明
部分文章来自各大搜索引擎,如有侵权,请与我联系删除。
打赏

文章底部电脑广告
手机广告位-内容正文底部

相关文章

您是本站第378285名访客 今日有335篇新文章/评论