Strava CLI 技能
透過 strava 命令列工具查詢與管理 Strava 數據。
前置需求
- 安裝 CLI:
curl -fsSL https://raw.githubusercontent.com/eddmann/strava-cli/main/install.sh | sh - 認證:
strava auth login(需要STRAVA_CLIENT_ID、STRAVA_CLIENT_SECRET)
快速總覽
一次呼叫即可取得彙總的運動員數據:
strava context # 完整總覽:運動員、統計、裝備、社團、活動
strava context --activities 10 # 更多近期活動
strava context --focus stats,gear # 僅顯示特定區段
指令
執行 strava --help 或 strava <command> --help 以探索所有選項。
活動
strava activities list [--after DATE] [--before DATE] [--limit N]
strava activities get <ID>
strava activities streams <ID> [--keys time,distance,heartrate,watts]
strava activities laps <ID>
strava activities zones <ID>
strava activities comments <ID>
strava activities kudos <ID>
運動員
strava athlete # 個人檔案
strava athlete stats # 年度與歷史總計
strava athlete zones # 心率/功率區間
路段與最佳成績
strava segments get <ID>
strava segments starred
strava segments explore --bounds SW_LAT,SW_LNG,NE_LAT,NE_LNG
strava efforts get <ID>
strava efforts list --segment-id <ID>
路線、社團、裝備
strava routes list
strava routes get <ID>
strava routes streams <ID>
strava routes export <ID> --format gpx|tcx
strava clubs list
strava clubs get <ID>
strava clubs members <ID> [--limit N]
strava clubs activities <ID> [--limit N]
strava gear get <GEAR_ID>
數據單位
| 欄位 | 單位 |
|---|---|
| distance | 公尺 |
| moving_time, elapsed_time | 秒 |
| average_speed, max_speed | 公尺/秒 |
| elevation | 公尺 |
| dates | ISO8601 |
常見用法
# 近期活動
strava activities list --limit 10
# 本月活動
strava activities list --after 2025-12-01
# 使用 jq 篩選
strava activities list | jq '[.[] | select(.sport_type=="Run")]'
# 總距離
strava activities list | jq '[.[].distance] | add'
認證狀態
strava auth status # 檢查是否已認證
strava auth refresh # 更新令牌
strava auth logout # 清除憑證
運動類型
Run, TrailRun, Walk, Hike, Ride, MountainBikeRide, GravelRide, EBikeRide, VirtualRide, VirtualRun, Swim, Workout, WeightTraining, Yoga, CrossFit, Rowing, Kayaking, Surf, Ski, Snowboard, IceSkate, Golf, Soccer, Tennis
退出代碼
- 0 = 成功
- 1 = 一般錯誤
- 2 = 認證錯誤(請執行
strava auth login)