garmer

⌚ Garmin健康数据智能管家

基于Garth官方认证库构建的Garmin Connect数据提取工具,支持睡眠、心率、运动等多维健康指标获取与JSON导出,实现个人健康数据的本地化智能管理。

收藏
11.3k
安装
2.9k
版本
v1.0.2
CLS 安全性认证2026-06-04
点击查看完整报告 >

使用说明

Garmer是一款专为Garmin智能穿戴设备用户打造的健康数据提取与分析工具,通过CLI命令行与Python API双模式,实现从Garmin Connect平台安全获取个人健康数据。

核心用法:用户首次使用需执行garmer login进行OAuth认证,token将加密存储于本地~/.garmer/目录。工具提供丰富的数据查询指令,包括garmer summary获取每日健康摘要(步数、卡路里、心率、压力)、garmer sleep分析睡眠质量与HRV数据、garmer activities导出运动记录,以及garmer export批量导出多日期数据为JSON格式。Python API层面支持更精细化的数据调用,如get_health_snapshot()获取全天健康快照、get_weekly_health_report()生成周度健康趋势报告,满足程序化分析需求。

显著优点:数据覆盖维度全面,涵盖活动、睡眠、心率、压力、步数、身体成分、饮水及呼吸频率等完整健康指标;架构设计注重隐私保护,所有敏感凭据与Token仅本地存储,无云端上传风险;采用Pydantic进行严格的类型安全验证,配合完善的错误处理机制,确保数据解析的可靠性;依赖栈精选garth(Garmin官方认证库)、httpx等成熟开源项目,版本锁定避免供应链攻击。

潜在缺点与局限性:要求Python 3.10+运行环境,对旧系统兼容性有限;作为T3来源的社区项目,虽经安全审计但长期维护稳定性不及官方产品;功能聚焦于数据提取而非分析,用户需自行编写脚本或使用第三方工具进行深度数据挖掘;依赖Garmin Connect API,若官方接口变更可能导致功能中断。

适合人群:Garmin手表/手环用户、量化健康爱好者、运动教练及科研人员。特别适合需要定期备份健康数据、进行跨平台数据分析,或希望将Garmin数据导入个人健康数据库的技术用户。对于仅需查看基础数据的普通用户,官方Garmin Connect App可能更为便捷。

使用风险:导出的JSON文件包含详细健康隐私信息,需妥善保管避免泄露;本地token文件若被恶意程序获取可能导致账户风险,建议设置适当的文件权限;garmer update功能使用git命令拉取更新,虽路径受控但建议在可信网络环境下使用;长期存储大量历史数据可能占用本地磁盘空间,需定期清理过期导出文件。

安全解读

核心功能

Garmer 是一款专为 Garmin 智能手表用户设计的健康数据提取与分析工具,通过 CLI 和 Python API 双接口提供完整的健康数据访问能力。支持提取睡眠(时长、阶段、HRV评分)、活动记录(跑步、骑行、游泳等)、心率监测(静息心率、区间分析)、压力指数、步数统计、身体成分(体重、体脂、肌肉量)、水分摄入及呼吸频率等 10+ 类健康指标。

显著优点

数据整合度高:提供 snapshotweekly_health_report 等聚合接口,一键获取多维度健康全景,省去用户手动整合分散数据的繁琐操作。隐私优先设计:所有数据本地存储于 ~/.garmer/ 目录,不上传第三方服务器,符合 GDPR 数据最小化原则。开发者友好:基于 garth(Garmin 官方认证库)、pydantichttpx 构建,提供类型完整的 Python API,支持日期范围查询、JSON 导出、趋势分析等高级用法。认证机制安全:采用标准 OAuth2 流程,令牌持久化存储避免重复登录,支持自定义令牌目录。

潜在局限

硬件绑定性强:完全依赖 Garmin 生态,无法兼容 Apple Health、Fitbit 等其他平台数据。令牌存储未加密:OAuth 令牌以明文形式本地存储,虽依赖 garth 内部机制,但缺乏额外加密层,系统被入侵时存在泄露风险。API 速率限制:频繁调用可能触发 Garmin Connect API 限制,文档未明确说明具体阈值。更新机制风险garmer update 命令使用 subprocess 执行 git 操作,若安装路径被篡改可能导致任意命令执行。

适合人群

  • Garmin 设备重度用户(Forerunner、Fenix、Venu 等系列)
  • 需要批量导出健康数据进行个人分析或备份的隐私敏感型用户
  • 开发者构建健康监测仪表盘、训练计划生成器等二次应用
  • 研究人员进行运动表现、睡眠质量等量化自我(Quantified Self)项目

常规风险

健康数据属于敏感个人信息,尽管工具本身不上传第三方,但导出的 JSON 文件需妥善保管;建议在共享设备上设置 GARMER_TOKEN_DIR 环境变量至加密卷,并定期执行 garmer login 刷新令牌以降低泄露窗口期。

garmer 内容

examples文件夹
references文件夹
scripts文件夹
src文件夹
garmer文件夹
extractors文件夹
models文件夹
手动下载zip · 66.0 kB
basic_usage.pytext/plain
请选择文件