自动登录 Zepp Life 并同步指定步数,支持 命令行 和 Web 可视化 两种使用方式。
📖 新手必看: 第一次使用?请先阅读 📘 详细图文使用教程,从注册账号到同步步数,手把手教你完成全流程!
# 分隔)access_token,再换取 login_token + app_token以北京时间 hour 为基准:
| 时间段 | 步数范围(天气系数=1) |
|---|---|
| 0:00 – 2:59 | 0 – 3,500 |
| 3:00 – 5:59 | 0 – 3,500 |
| 6:00 – 8:59 | 3,500 – 7,000 |
| 9:00 – 11:59 | 7,000 – 10,500 |
| 12:00 – 14:59 | 10,500 – 14,000 |
| 15:00 – 17:59 | 14,000 – 17,500 |
| 18:00 – 20:59 | 17,500 – 21,000 |
| 21:00 – 23:59 | 21,000 – 24,500 |
公式:
min_step = 3500 × max(⌈hour/3⌉-1, 0) × factor,max_step = 3500 × ⌈hour/3⌉ × factor
开启天气功能后,通过 wttr.in 查询天气并匹配系数(未匹配则系数为 1):
| 天气 | 系数 | 天气 | 系数 |
|---|---|---|---|
| 多云 | 0.9 | 小雪 | 0.6 |
| 阴 | 0.8 | 中雪 | 0.4 |
| 小雨 | 0.7 | 大雪 | 0.3 |
| 中雨 | 0.5 | — | — |
| 大雨 | 0.4 | — | — |
| 暴雨 | 0.3 | — | — |
| 大暴雨 / 特大暴雨 | 0.2 | — | — |
脚本自动识别登录方式:
| 输入格式 | 识别结果 | 登录方式 |
|---|---|---|
example@gmail.com | 邮箱 | third_name=email |
13800138000 | 手机号(自动补 +86) | third_name=huami_phone |
+8613800138000 | 已带区号手机号 | third_name=huami_phone |
pip install requests pytz
Python 版本要求:3.6+
提供美观的浏览器界面,带实时日志和进度条。
# 默认端口 8765
python3 server.py
# 自定义端口
python3 server.py 9090
启动后浏览器访问 http://localhost:8765 即可使用。
如果不方便本地启动服务器,可以直接使用在线部署版本:
👉 https://bs.yanwan.store/run4/
功能与本地 Web 版一致,打开即用,无需安装任何依赖。
Web 版采用一站式后端提交架构:
web/ 目录):提供用户界面,用户输入账号密码和步数配置server.py):接收前端的单次请求后,在服务端完成全部三阶段 API 调用(获取 access code → 获取 token → 提交步数)zepp.com 和 huami.com 域名,不会转发到其他地址# 分隔)直接通过命令行参数执行,适合脚本调度和 CI/CD 集成。
python3 main.py <账号> <密码> <天气开关> <地区> [步数]
| 参数 | 必填 | 说明 |
|---|---|---|
账号 | ✅ | Zepp Life 登录账号(手机号或邮箱),多账户用 # 分隔 |
密码 | ✅ | 对应账号密码,多账户用 # 分隔 |
天气开关 | ✅ | True 开启天气调节 / False 关闭 |
地区 | ✅ | 开启天气时填中文城市名;关闭时填 NO |
步数 | ❌ | 可选,指定固定步数(正整数)。传入后忽略自动计算 |
# 单账户 — 关闭天气(自动计算步数)
python3 main.py "13800138000" "your_password" "False" "NO"
# 单账户 — 开启天气(西安为例)
python3 main.py "1633422028@qq.com" "Zhangsan@098" "True" "西安"
# 指定固定步数为 18888
python3 main.py "13800138000" "your_password" "False" "NO" 18888
# 多账户 — 用 # 分隔账号和密码
python3 main.py "13800138000#13800138001" "pass1#pass2" "False" "NO"
# 邮箱登录
python3 main.py "user@gmail.com" "your_password" "False" "NO"
支持通过环境变量或 CI/CD 平台的 Secrets 配置参数:
| 变量名 | 说明 |
|---|---|
USER | Zepp Life 账号(多账户用 # 分隔) |
PWD | Zepp Life 密码(多账户用 # 分隔) |
OPEN_GET_WEATHER | 天气开关:True / False |
AREA | 天气地区(关闭时填 NO) |
STEP | 可选,指定固定步数(不填则自动计算) |
├── main.py # 命令行主程序(登录、步数计算、天气查询、数据提交) ├── server.py # Web 后端服务器(一站式提交 + 静态文件托管) ├── web/ # Web 前端文件 │ ├── index.html # 页面结构与样式 │ ├── app.js # 前端交互逻辑 │ └── data_template.js # 步数数据包模板(备用) ├── GUIDE.md # 详细图文使用教程 ├── pic/ # 教程相关图片资源 ├── README.md # 帮助文档 └── LICENSE # 开源许可证