
九号APP免折腾脚本教程,轻松搞定每日自动签到!(附开源代码)
最近搞了一辆九号电动车(本人非精神小伙),APP里面有个签到功能,每天手动签到怪麻烦的,于是从 GitHub 上翻了一个签到脚本,修改了一下,分享出来供大家使用。
🔗 项目地址:https://github.com/waistu/Ninebot
实现功能
- 💻 本地运行
- ✅ 自动签到 (GitHub Actions & 青龙面板)
- 👋 单账号/多账号签到
- 🔔 Bark 通知推送
如果你有自己的服务器,推荐使用青龙面板进行运行。当然,也可以 GitHub Actions 自动运行,需要 GitHub 访问条件以及 GitHub 账号。
环境变量参数
变量名 | 值示例 / 说明 | 必填 | 备注 |
---|---|---|---|
NINEBOT_DEVICE_ID |
1234567890 (你的设备唯一标识) |
✅ | 单账号时填写单个 deviceId |
NINEBOT_AUTHORIZATION |
Bearer xyz789... (你的授权令牌) |
✅ | 单账号时填写单个 authorization |
NINEBOT_ACCOUNTS |
[{"deviceId":"123","authorization":"Bearer xyz","name":"账号1"},{"deviceId":"456","authorization":"Bearer abc","name":"账号2"}] |
❌ | 多账号时使用,JSON 数组格式(需压缩为单行,无换行符) |
BARK_KEY |
xxxxxxxxxxxxxxxx (你的 BARK 推送设备密钥) |
❌ | 选填,用于接收签到结果通知(需配合 BARK 应用) |
BARK_URL |
https://api.day.app (默认值) |
❌ | 选填,自定义 BARK 服务器地址(默认官方地址) |
BARK_GROUP |
九号签到 (推送分组名称) |
❌ | 选填,推送消息的分组标签 |
BARK_ICON |
https://example.com/icon.png (图标 URL) |
❌ | 选填,推送消息显示的图标 |
BARK_SOUND |
chime (铃声名称) |
❌ | 选填,推送消息的铃声(默认 bell ,支持 chime 、alarm 等) |
九号出行 APP 抓包
脚本签到需要用账号的设备 ID(DEVICE_ID)和授权令牌(AUTHORIZATION),通过抓包可以获取,这里以 IOS 为例(安卓抓包自行尝试)。
- 首先,确保手机已安装九号出行 APP,并登录自己的账号。
- 在 App Store 搜索下载 Stream ,根据提示配置CA证书,然后在手机中进行证书信任设置。
- 打开 Stream 工具,点击开始抓包,然后切换至九号 APP,打开签到页面,之后回到抓包工具,结束抓包。
- 在抓包历史中找到刚抓包的数据,搜索 api/user-sign/v2/sign 字段,点击搜索结果中的第一个 POST 请求数据,打开切换至请求头部分,下面的 Authorization 和 device_id 就是后面需要用的授权令牌和设备 ID。
本地运行
- 本地终端克隆仓库
git clone https://github.com/waistu/Ninebot.git
- 安装依赖
npm install
- 设置环境变量(将.env.example 重命名为.env)
# 九号APP相关(必填)
NINEBOT_DEVICE_ID="你的设备ID"
NINEBOT_AUTHORIZATION="你的授权令牌"
NINEBOT_NAME="你自定义账户名" # 可选
# Bark通知相关(可选,需要则配置)
BARK_KEY=你的Bark密钥
BARK_URL=https://api.day.app # 默认使用 APP 自带服务器
# 以下为Bark可选参数(根据需要添加)
# BARK_GROUP=九号签到通知 # 通知分组
# BARK_ICON=https://xxx.png # 通知图标URL
# BARK_SOUND=bell # 通知铃声
- 运行脚本
npm start
使用青龙面板运行脚本
在青龙面板的订阅管理中,选择创建订阅,链接填写 https://github.com/waistu/Ninebot.git ,名称自定义,定时规则可随便填写(例如每天早上七点运行一次 0 7 * * * ),拉取完脚本禁用即可。
拉取完成后,在定时任务这里会出现对应的脚本内容,可以自行修改定时规则和名称。
接下来,在依赖管理这里安装NodeJs 依赖,依次添加 axios、moment、dotenv 即可。
如果下载比较慢,可以在 设置 > 依赖设置 > Node 软件包镜像源 添加加速镜像源。
🔗 Node 软件包镜像源:https://registry.npmmirror.com
最后在环境变量这里填写相关的环境变量即可,NINEBOT_DEVICE_ID 和 NINEBOT_AUTHORIZATION 就是前面抓包获取的参数,为必填项,其他变量主要为 Bark 通知推送,可以按需选择。
配置完毕后,可以在定时任务那里手动运行一次,检查日志内容,看是否能正常运行。
手机端 Bark 通知效果如下:
最后说明
目前签到貌似送的 N 币非常少了,想跑的可以尝试下,后续不排除 API 失效等问题,可以自行抓包解决。