google-weather

🌤️ 全球精准实时天气数据服务

效率榜 #40

基于 Google Weather API 的实时天气查询工具,提供全球精准气象数据与24小时预报,支持多语言输出。

收藏
21.4k
安装
4.3k
版本
v1.2.0
CLS 安全性认证2026-05-06
点击查看完整报告 >

使用说明

核心用法

Google Weather 是一个轻量级的天气数据查询技能,通过调用 Google Cloud Weather API 和 Geocoding API,为用户提供全球任意地点的实时天气信息与预报服务。用户可通过命令行直接调用 weather_helper.py 脚本,支持三种查询模式::current 获取当前天气(含温度、体感温度、湿度、风速、天气状况等)、forecast 获取24小时逐小时预报、、json 输出原始 JSON 数据供二次开发使用。位置输入极为灵活,支持城市名称(如 "New York")、地标或坐标,系统自动完成地理编码转换。

显著优点

数据权威性与时效性:依托 Google 官方 Weather API,数据每15分钟更新,覆盖全球任意地点,相比免费天气 API 具有更高的准确率和稳定性。输出体验优秀:内置 emoji 图标与格式化排版,直观展示天气状况;支持多语言自适应(英语、希伯来语等),本地化体验良好。功能完整:不仅提供基础温湿度,还包含 UV 指数、降水概率、云量、能见度等专业气象指标,满足从日常出行到户外活动的多元需求。部署简单:纯 Python 实现,仅依赖 requests 等标准库,通过环境变量配置 API key,符合云原生安全实践。

潜在缺点与局限性

成本门槛:需自行申请 Google Cloud API key 并启用计费,虽然 Google 提供免费额度,但高频调用或商业场景可能产生费用。功能边界:仅支持天气数据查询,无历史数据回溯、气象预警推送、多地点对比等进阶功能;24小时预报为逐小时粒度,缺乏7日或15日中长期预报。网络依赖:完全依赖 Google API 可用性,国内用户可能面临访问稳定性问题。扩展性有限:输出格式固定,虽提供 JSON 原始模式,但缺乏插件化自定义格式能力。

适合的目标群体

  • 开发者与运维人员:需要快速集成天气数据到脚本、告警系统或自动化工作流
  • 内容创作者与运营:为社交媒体、旅行攻略、户外活动计划获取实时天气素材
  • 个人效率用户:习惯命令行工具,追求快速、无广告的天气查询体验
  • 多语言环境用户:需要希伯来语等非英语天气信息的特定场景

使用风险

API 配额与成本:Google Cloud 对 Weather API 有每日调用次数限制,超出后按量计费,生产环境需监控用量并设置预算告警。密钥管理:API key 需妥善保管,避免误提交至代码仓库导致泄露;建议配合 Google Cloud 的密钥限制功能(如 IP 白名单)。数据延迟:虽然标注15分钟更新,但实际数据新鲜度受 Google 数据源影响,极端天气场景下可能存在滞后。服务连续性:作为社区维护技能(非 Google 官方),长期维护与 API 兼容性更新依赖开发者社区活跃度。

安全解读

核心用法

Google Weather 是一个调用 Google 官方 Weather API 的天气查询 Skill,提供全球任意地点的实时天气数据和24小时预报。支持通过城市名、地址或坐标定位,自动调用 Google Maps Geocoding API 进行地理编码。

主要功能:

  • 当前天气:温度、体感温度、天气状况(带emoji图标)、湿度、风速风向
  • 24小时预报:逐小时温度、天气、风力预测
  • 详细数据:UV指数、降水概率、云量、能见度等
  • 多语言输出:根据位置自动适配语言(支持英文、希伯来语等)

使用方式:

# 格式化当前天气
python3 skills/google-weather/lib/weather_helper.py current "城市名"

# 24小时预报
python3 skills/google-weather/lib/weather_helper.py forecast "城市名"

# 原始JSON数据
python3 skills/google-weather/lib/weather_helper.py json "城市名"

显著优点

1. 数据来源权威:直接调用 Google Cloud Weather API,数据每15分钟更新,准确性和时效性有保障
2. 覆盖全球:支持任意地点,自动地理编码无需手动查坐标

3. 输出美观:内置emoji天气图标,温度、湿度、风力一目了然

4. 密钥管理灵活:支持 GOOGLE_API_KEYGOOGLE_WEATHER_API_KEYGOOGLE_MAPS_API_KEY 三种环境变量

5. HTTPS全加密:所有API通信均采用TLS 1.3加密

潜在缺点与局限性

1. 依赖外部API:需要自行注册 Google Cloud 项目并启用 Weather API 和 Geocoding API,存在免费额度限制(每月有限次数)
2. 依赖声明缺失:代码使用 requests 库但未提供 requirements.txt,可能导致部署失败

3. 错误处理简单:对API返回的401/403/429等错误码缺乏友好提示

4. 无缓存机制:每次查询都实时请求API,频繁调用易触发速率限制

适合人群

  • 需要快速获取全球天气数据的开发者和系统管理员
  • 已有 Google Cloud 账号和API密钥的用户
  • 追求数据权威性、不依赖第三方天气聚合服务的用户

常规风险

| 风险项 | 等级 | 说明 |
|--------|------|------|
| API密钥泄露 | 低 | 从环境变量安全读取,无硬编码 |
| 数据隐私 | 低 | 仅传输位置信息,无个人敏感数据 |
| 服务可用性 | 中 | 依赖Google Cloud服务,需关注配额和账单 |
| 依赖安全 | 低 | requests库未声明版本,但本身为成熟库 |

安全认证等级:A(82分)——标准级安全,可放心使用。代码无危险函数、无动态执行、无敏感信息泄露,主要扣分项为依赖声明不完整和维护者账号较新。

google-weather 内容

lib文件夹
手动下载zip · 4.9 kB
weather_helper.pytext/plain
请选择文件