AsZer0s/xuechebu-helper
GitHub: AsZer0s/xuechebu-helper
一个用于驾考 APP「学车不」的登录与理论视频学时自动化 API 工具,支持登录认证、章节查询和学时进度上报。
Stars: 0 | Forks: 0
# 学车不 APP - 登录 & 理论视频学时助手
**仅供学习研究使用!请勿用于违法违规用途!**
## 免责声明
## 功能
- 登录 API — 支持手机号+密码登录
- 获取视频章节列表(科目一/科目四)
- 查询学时进度
- 上报视频播放进度
- 标记章节完成
## 文件说明
login.py — 登录模块:AES 加密手机号、MD5 哈希密码
video.py — 视频模块:获取章节列表、查询学时、上报进度
## 使用方法
### 安装依赖
pip install requests pycryptodome
### 登录
from login import login, encrypt_phone, hash_password
password_md5 = hashlib.md5("你的密码".encode()).hexdigest()
session = login("手机号", password_md5)
或直接运行:
python login.py
### 获取视频章节
from video import login, get_chapter_info, get_index_info
session = login("手机号", "密码的MD5值")
info = get_index_info(session) # 学习进度总览
chapters = get_chapter_info(session, km="4") # 科目四章节列表
### 标记章节完成
from video import login, finish_chapter
session = login("手机号", "密码的MD5值")
finish_chapter(session, chapter_id="345123827", km="4")
或直接运行:
python video.py
## API 端点
### 登录服务 (`https://api.xuechebu.com`)
| 端点 | 方法 | 说明 |
|------|------|------|
| `/usercenter/userinfo/login` | POST | 登录 |
### 视频服务 (`https://xuexiapi.xuechebu.com`)
| 端点 | 方法 | 参数 | 说明 |
|------|------|------|------|
| `/videoApiNew/SpPlay/GetIndexInfo` | GET | - | 学习进度总览 |
| `/videoApiNew/SpPlay/GetChapterInfo` | GET | `km` | 章节列表 |
| `/videoApiNew/SpPlay/GetChapterInfoByID` | GET | `id` | 章节详情 |
| `/videoApiNew/SpPlay/SetPlayProgress` | GET | `Type,km,Id,thisWatchTime,...` | 上报进度/标记完成 |
## 技术细节
### 登录参数构造
| 参数 | 来源 | 算法 |
|------|------|------|
| `logintype` | 硬编码 `"7"` | - |
| `imei` | `XQ-{timestamp}-{随机数}` | 本地生成 |
| `username` | AES-128-CBC 加密 | Key=IV, Base64 编码 |
| `passwordmd5` | MD5 哈希 | 标准 MD5 hexdigest |
### 学时上报参数
| 参数 | 说明 |
|------|------|
| `Type=3` | 进度更新 |
| `Type=4` | 标记章节完成 |
| `thisWatchTime` | 本次累计观看秒数 |
| `thisWatchLocation` | 当前播放位置(秒) |
## 致谢
- [pycryptodome](https://github.com/Legrandin/pycryptodome) — AES 加密库
- [requests](https://github.com/psf/requests) — HTTP 客户端
标签:API工具, BeEF, Python, 无后门, 爬虫, 网络调试, 脚本辅助, 自动化, 逆向工具, 驾考学车