- 小米运动自动刷步数,小米运动APP现已改名
Zepp Life
,为方便说明,后面还是称其为小米运动。但下载注册时请搜索Zepp Life
。 - 注册账号后建议先去以下网站测试自己的账号刷步数是否正常:出去走走:https://motion.faithxy.com/
- 如无法刷步数同步到支付宝等,建议重新注册一个新的。
如果觉得好用,请给一个免费的star吧
- 前往https://github.com/settings/tokens?type=beta创建个人token,建议使用Fine-grained tokens,避免token泄露导致不必要的麻烦。
- 填写token的名称,用于自己区别干嘛用的。
- 选择token有效期,最大时长为1年。一年后需要重新续期或重建,唯一缺点
Repository access
选择Only select repositories
勾选自己fork后的仓库,下拉可搜索:输入 mimotion 进行检索- 点击
Repository permissions
展开菜单,并勾选以下四个权限即可,其他的可以不勾选Actions
Access:Read and write
用于获取Actions的权限Contents
Access:Read and write
用于更新定时任务和日志文件的权限Metadata
Access:Read-only
这个自带的必选Workflows
Access:Read and write
获取用于更新.github/workflow
下文件的权限
- 建议使用上面的小权限token,这个token无法指定某一个仓库的权限,也就是token一旦泄露将有可能导致其他人直接自由访问和修改你的所有仓库代码
- 前往https://github.com/settings/tokens/new创建
- 填写token名称,选择有效期
Select scopes
勾选repo
和workflow
即可
- Settings-->Secrets and variables-->Actions-->New repository secret
- 快捷跳转地址 https://github.com/${你的github用户名}/mimotion/settings/secrets/actions
- 点击右侧的
New repository secret
即可添加Secret
-
需要注意Secret变量是密文,提交后无法查看,只能删除或用新值更新,建议本地保存一下自己的配置数据方便后期修改。
-
CONFIG的内容:
{ "USER": "[email protected]", "PWD": "password", "STEP": "steps", "PUSH_PLUS_TOKEN": "", "PUSH_PLUS_HOUR": "", "PUSH_PLUS_MAX": "30", "SLEEP_GAP": "5", "USE_CONCURRENT": "False" }
字段名 格式 USER 小米运动登录账号,仅支持小米运动账号对应的手机号或邮箱,不支持小米账号 PWD 小米运动登录密码,仅支持小米运动账号对应的密码 STEP 指定步数,不填写为默认值10000,建议范围:0~98800,超出范围均为最大值98800 PUSH_PLUS_TOKEN 推送加的个人token,申请地址pushplus,工作流执行完成后推送每个账号的执行状态信息,如没有则不要填写 PUSH_PLUS_HOUR 限制只在某个整点进行pushplus的推送,值为整数,比如设置21,则只在北京时间21点XX分执行时才进行pushplus的消息推送。如不设置或值非数字则每次执行后都会进行推送 PUSH_PLUS_MAX 设置pushplus最大推送账号详情数,默认为30,超过30个账号将只推送概要信息:多少个成功多少个失败。因为数量太多会导致内容过长无法推送。具体最大值请自行调试 SLEEP_GAP 多账号执行间隔,单位秒,如果账号比较多可以设置的短一点,默认为5秒 USE_CONCURRENT 是否使用多线程,实验性功能,未测试是否有效。账号多的可以试试,将它设置为True即可,启用后 SLEEP_GAP
将不再生效
- 多账户请用 # 分割 然后保存到变量 USER 、 PWD和STEP
- 理论上账户数量不受限制,但是实际要看github actions的资源和华米接口是否有限制,pushplus消息内容应该也有最大长度限制,反正具体上限请自行测试
{
"USER": "13800138000#13800138001",
"PWD": "abc123qwe#abcqwe2",
"STEP": "11451#11451",
"PUSH_PLUS_TOKEN": "",
"PUSH_PLUS_HOUR": ""
}
1、添加名为 CRON_HOURS
的Variables变量 Settings-->Secrets and variables-->Actions-->New repository variables
注意不是Secret
- 快捷跳转地址 https://github.com/${你的github用户名}/mimotion/settings/variables/actions
- 填写自动执行的时间,单位为小时,此处需要设置UTC时间,例如设置
0,2,4,6,8,14
则会在北京时间8,10,12,14,16,22
点触发执行
- 填写自动执行的时间,单位为小时,此处需要设置UTC时间,例如设置
- 添加完成后可以在Actions中手动触发:
Random Cron
来触发替换,或者等下一次定时执行时它将会自动替换。
- cron表达式格式如下:
分 小时 日期 月份 年份
- github actions中执行时间为UTC时间,即北京时间-8,如果需要每天
8,10,12,14,16,22
点执行,则设置cron为0 0,2,4,6,8,14 * * *
on:
schedule:
- cron: '0 0,2,4,6,8,14 * * *'
-
注意 如果已添加
CRON_HOURS
变量,则修改此文件的cron表达式会失效,在下次执行Random Cron
后表达式中小时的部分会被覆盖为CRON_HOURS
配置的值 -
注意以上两种方式二选一即可,推荐直接使用方式1,变量值填写的是逗号分隔的数字,别乱填别的报错别找我!
-
github actions 0点为执行高峰,排队可能会延后一两小时才执行,建议直接从2开始
- 前往Actions,左侧选择
刷步数
,快捷链接:https://github.com/${你的github用户名}/mimotion/actions/workflows/run.yml - 新fork的仓库默认未启用工作流,进入Actions后点击
I understand my workflows, go ahead and enable them
启用,然后左侧选择刷步数
之后,再点击enable workflow
启用工作流。请确保开启工作流,否则不会定时执行。 - 点击右侧的
Run workflow
触发执行,触发后刷新即可查看执行记录。验证是否正确配置并执行刷步数。
- 默认每天运行6+次,由run.yml中的cron控制,分钟为随机值,执行后自动更新分钟值,随机后可能当前整点二次执行,例如:8:05分执行后,分钟值随机为50,则会在8:50再次执行。
- 如果配置了
CRON_HOURS
Variable变量,则脚本将自动判断,例如8:05分执行后,将从小时中剔除8,即8:00-8:59都不会再重复执行,避免随机的步数混乱。
-
多账户的数量、密码和步数个数请一定要对上 不然无法使用!!!
-
启动时间得是UTC时间!
-
如果支付宝没有更新步数,到小米运动->设置->账号->注销账号->清空数据,然后重新登录,重新绑定第三方。建议去网站测试:出去走走:https://motion.faithxy.com/
-
小米运动不会更新步数,只有关联的会同步!!!!!
-
请各位在使用时Fork当前仓库,防止出现不必要的bug.
-
请注意,账号不是 [小米账号],而是 [小米运动/ZeppLife] 的账号。
-
cron的执行根据github actions的资源进行排队,并不是百分百按指定的时间进行运行,请知悉。
北京时间: '48 9,12,15,18,20,22 * * *' next cron: UTC时间: '37 1,4,7,10,12,14 * * *' 北京时间: '37 9,12,15,18,20,22 * * *' next exec time: UTC(14:37) 北京时间(22:37)