跑步数据怎么导出:FIT、TCX、GPX 的用途与转换
跑步数据怎么导出:先分清三种格式——FIT 是设备原生记录,字段最全,适合做深度分析;TCX 是 XML 结构,带圈速和心率,通用性最好;GPX 只记轨迹点,最轻但会丢心率、步频、功率。想长期保存或换平台,导出 FIT;想给教练看或导入老旧软件,用 TCX;只想分享路线,GPX 就够。
下面按「先搞清楚格式、再选导出路径、最后怎么分析」讲。全程不需要写代码也能做完,愿意动手的可以再接一步 Python。
三种格式的差别,决定了你能分析什么
| 格式 | 内容 | 优点 | 会丢什么 |
|---|---|---|---|
| FIT | 二进制,记录所有传感器字段与事件 | 字段最全,体积小,行业通用 | 需要用支持 FIT 的工具打开 |
| TCX | XML,含轨迹、心率、圈信息 | 可读性好,导入兼容性高 | 部分高级指标(如功率平衡)可能丢 |
| GPX | XML,主要是轨迹点与时间 | 几乎所有地图软件都支持 | 心率、步频、功率、圈速通常全丢 |
一个常见误区:把手表里的活动导出成 GPX 存起来当备份。GPX 没有心率就没有分析价值,等你哪天想算心率漂移,会发现数据已经不可恢复。备份一律用 FIT。
从平台导出的三条路径
平台众多,但导出入口无非三类:
- 单活动导出:在活动详情页找「导出」或「下载原始文件」,一般提供 FIT/TCX/GPX 三种,优先选 FIT。
- 账号级批量导出:在账号设置或隐私设置里,通常叫「导出我的数据 / 下载全部数据」,会打包成压缩文件,等待时间从几分钟到几天不等。
- 接口或第三方同步:部分平台提供授权机制,可让分析工具自动拉取。优点是持续,缺点是一旦撤销授权就断流,历史也不会自动补齐。
批量导出前先确认两件事:导出是否包含原始文件而不只是 CSV 摘要;导出是否有时间范围限制。有些平台只允许导出近一年,更早的要去单活动页面逐个下载。
批量整理:命名和目录结构比工具重要
几十个文件可以手动改,几百个就必须有规则。建议的目录结构与命名:
- 按年/月分目录:
2026/10/; - 文件名保留日期与类型:
2026-10-12-run-easy.fit; - 同一天多次训练加序号:
-1、-2; - 单独建一个
raw/放原始文件,永不修改;分析结果放out/。
原则是「原始文件只读」。任何清洗、单位换算都产出新文件,这样出错时能回退,也不会因为某次误操作毁掉唯一副本。
用表格做基础分析
不想写代码的话,表格软件足够回答大部分问题。把每次训练整理成一行,字段建议固定为:日期、类型、距离、时长、平均配速、平均心率、最大心率、平均步频、爬升、主观疲劳(1~10)。
| 想回答的问题 | 需要的字段 | 做法 |
|---|---|---|
| 这周练了多少 | 日期、距离、时长 | 按周汇总距离与时长,看四周趋势 |
| 同样心率下有没有变快 | 平均心率、平均配速 | 筛出轻松跑,做「配速-心率」散点或月度均值 |
| 长距离后段掉速多少 | 分段配速 | 把前半程与后半程配速相减,记录差值 |
| 负荷涨得快不快 | 时长、强度 | 按周累计,算近 7 天与近 28 天比值 |
负荷的具体算法和读法见 训练负荷怎么看,这里只强调一点:表格里的字段一旦定下,就别中途改定义,否则趋势会断。
愿意写代码的话,多一步能省很多时间
Python 生态里有成熟的 FIT 解析库,可以把一个目录的文件批量读成表,再做聚合。流程通常是:读文件 → 提取记录点 → 按秒或按公里降采样 → 输出 CSV。注意两点:
- FIT 里的时间戳常是设备本地时间加偏移,跨时区旅行时要处理,否则会出现「同一天两次训练」的假象;
- 不同设备的字段名不完全一致,写脚本前先打印一份字段清单,别硬编码。
如果只是想算周负荷和区间分布,表格公式比脚本更快上手,别为了技术而技术。
隐私:导出之后风险才真正开始
导出的文件包含精确轨迹,起点往往就是家门口。分享或上传前建议:
- 用工具删掉起终点附近的路段,或直接裁剪前后 500 米;
- 不要把带时间戳的原始文件公开发布,它同时暴露你的作息;
- 云盘备份设私有链接,关闭「任何人可查看」;
- 共享给教练时只发需要的活动,不发整个账号。
轨迹隐私的完整清单见 运动数据隐私。
检查清单
- 确认你要的格式:备份用 FIT,兼容用 TCX,分享路线用 GPX。
- 先在单个活动上试导出,确认文件能打开、字段齐全。
- 再做一次账号级批量导出,核对活动数量与时间跨度。
- 建立
raw/只读目录,命名规则统一。 - 建一张固定字段的总表,每月追加一次。
- 原始文件至少两处备份,其中一处离线。
- 分享前裁剪起终点,检查云盘权限。
- 每半年重做一次批量导出,防止平台政策变化导致数据取不回。