100 lines
2.6 KiB
Markdown
100 lines
2.6 KiB
Markdown
# 咪咕短剧 flows.cdyylkj.com/miguSM/home 自动化说明
|
||
|
||
使用 **DrissionPage** + **TgeBrowser** 实现自动化:输入手机号、点击发送验证码、填写验证码。
|
||
|
||
## 前置条件
|
||
|
||
1. **安装 TgeBrowser**:从 [https://tgebrowser.com/zh/download](https://tgebrowser.com/zh/download) 下载并安装
|
||
2. **启动 TgeBrowser 客户端**,确保本地 API 服务运行(默认端口 50326)
|
||
3. **获取 API Key**:TgeBrowser 客户端 → API → 生成新密钥
|
||
4. **设置环境变量**:
|
||
```powershell
|
||
$env:TGEBROWSER_API_KEY = "你的API密钥"
|
||
```
|
||
|
||
## 流程说明
|
||
|
||
- **步骤一**:传入电话号码 → 新建一个 TgeBrowser 浏览器 → 打开 miguSM 页面 → 输入手机号 → 点击发送验证码 → 返回成功
|
||
- **步骤二**:传入验证码 → 在对应会话中填写验证码并提交
|
||
|
||
每个电话号码对应一个新建的浏览器实例。
|
||
|
||
## 使用方式
|
||
|
||
### 方式一:API 服务
|
||
|
||
```bash
|
||
# 安装依赖
|
||
pip install -r requirements.txt
|
||
|
||
# 启动 API(端口 8001)
|
||
python api_migu.py
|
||
```
|
||
|
||
**接口一:提交手机号**
|
||
|
||
```http
|
||
POST http://127.0.0.1:8001/api/submit_phone
|
||
Content-Type: application/json
|
||
|
||
{
|
||
"phone": "13800138000",
|
||
"url": "https://flows.cdyylkj.com/miguSM/home"
|
||
}
|
||
```
|
||
|
||
响应示例:
|
||
```json
|
||
{
|
||
"success": true,
|
||
"session_id": "uuid-xxx",
|
||
"message": "输入电话号码成功"
|
||
}
|
||
```
|
||
|
||
**接口二:提交验证码**
|
||
|
||
```http
|
||
POST http://127.0.0.1:8001/api/submit_code
|
||
Content-Type: application/json
|
||
|
||
{
|
||
"session_id": "上一步返回的 session_id",
|
||
"code": "123456"
|
||
}
|
||
```
|
||
|
||
### 方式二:命令行
|
||
|
||
**推荐:交互模式(一步完成)**
|
||
|
||
```bash
|
||
python run_migu_cli.py --phone 13800138000 -i
|
||
# 输入手机号、点击发送验证码后,会提示「请输入短信验证码」,输入收到的验证码即可
|
||
```
|
||
|
||
**分步执行**
|
||
|
||
```bash
|
||
# 步骤一
|
||
python run_migu_cli.py --phone 13800138000
|
||
|
||
# 步骤二(仅在同一 shell 内、步骤一之后执行,因为依赖内存中的 page)
|
||
python run_migu_cli.py --code 123456
|
||
```
|
||
|
||
> 跨进程/跨请求的会话请使用 API 模式(`api_migu.py`)。
|
||
|
||
## 选择器说明
|
||
|
||
若目标页面结构变化导致找不到输入框或按钮,可修改 `migu_miguSM_dp.py` 中的选择器列表(`_find_first` 所用选择器)。当前已适配常见 H5 表单结构。
|
||
|
||
## 文件说明
|
||
|
||
| 文件 | 说明 |
|
||
|------|------|
|
||
| `tgebrowser_client.py` | TgeBrowser REST API 客户端(创建/启动/停止浏览器) |
|
||
| `migu_miguSM_dp.py` | DrissionPage 自动化逻辑(输入手机号、发送验证码、填写验证码) |
|
||
| `api_migu.py` | FastAPI 接口(submit_phone / submit_code) |
|
||
| `run_migu_cli.py` | 命令行入口 |
|