update at 2025-10-26 10:24:17
This commit is contained in:
64
VERSION.md
64
VERSION.md
@@ -1,12 +1,20 @@
|
||||
# 版本信息
|
||||
|
||||
## 当前版本:v1.1.0
|
||||
## 当前版本:v1.2.0
|
||||
|
||||
发布日期:2025-10-25
|
||||
发布日期:2025-10-26
|
||||
|
||||
## 主要特性
|
||||
|
||||
### 🎯 AI 驱动的滑块验证码自动破解
|
||||
### 📨 macOS 短信自动读取(v1.2.0)
|
||||
|
||||
- ✅ 基于 `better-sqlite3` 读取 `~/Library/Messages/chat.db` 的最新验证码短信
|
||||
- ✅ 智能忽略旧消息,仅对新到达的“豆瓣网”验证码进行解析
|
||||
- ✅ 使用正则解析 `验证码:xxxx` 格式,支持 4-6 位验证码
|
||||
- ✅ 自动回填验证码输入框,失败时即时回退到手动输入
|
||||
- ⚠️ 仅支持 macOS,并需要为终端授予“完全磁盘访问权限”
|
||||
|
||||
### 🎯 AI 驱动的滑块验证码自动破解(v1.1.0)
|
||||
|
||||
- ✅ 多策略并行检测(暗区域、边缘、颜色量化、LAB 色彩空间)
|
||||
- ✅ 双滑块精准识别(左侧滑块 + 右侧缺口)
|
||||
@@ -71,23 +79,27 @@ const distance = box.x / scaleX;
|
||||
|
||||
## 文件结构
|
||||
|
||||
```
|
||||
src/slider/ # 滑块验证模块
|
||||
├── detector.ts # 主检测器
|
||||
├── detector-self-learning.ts # 模板匹配
|
||||
├── slider-controller.ts # Playwright 集成
|
||||
├── candidate-search.ts # 多策略检测
|
||||
├── geometry.ts # IoU 计算
|
||||
└── image.ts # Sobel 边缘检测
|
||||
|
||||
noflag/ # 原始验证码截图
|
||||
output/ # 红框标注结果
|
||||
```mermaid
|
||||
graph TD
|
||||
root[src/]
|
||||
root --> slider_dir[slider/<br/>滑块验证模块]
|
||||
slider_dir --> slider_detector[detector.ts<br/>主检测器]
|
||||
slider_dir --> slider_self[detector-self-learning.ts<br/>模板匹配]
|
||||
slider_dir --> slider_controller[slider-controller.ts<br/>Playwright 集成]
|
||||
slider_dir --> slider_candidate[candidate-search.ts<br/>多策略检测]
|
||||
slider_dir --> slider_geometry[geometry.ts<br/>IoU 计算]
|
||||
slider_dir --> slider_image[image.ts<br/>Sobel 边缘]
|
||||
root --> sms_dir[sms/<br/>macOS 短信读取模块]
|
||||
sms_dir --> sms_code[douban-code.ts<br/>解析 chat.db]
|
||||
root --> noflag[noflag/<br/>原始验证码截图]
|
||||
root --> output_dir[output/<br/>标注结果]
|
||||
```
|
||||
|
||||
## 依赖项
|
||||
|
||||
- **playwright**: ^1.41.1(浏览器自动化)
|
||||
- **sharp**: ^0.33.3(图像处理)
|
||||
- **better-sqlite3**: ^12.4.1(本地 SQLite 查询,读取短信)
|
||||
- **typescript**: ^5.4.2
|
||||
|
||||
## 环境变量
|
||||
@@ -97,11 +109,14 @@ DOUBAN_AUTO_SLIDER=1 # 启用自动滑块验证
|
||||
DOUBAN_PHONE=手机号 # 登录手机号(必填)
|
||||
```
|
||||
|
||||
自动短信读取不需要新增环境变量,保持终端前台即可。
|
||||
|
||||
## 已知限制
|
||||
|
||||
1. **图像识别准确率**:约 70-80%,复杂背景或低对比度图片识别率较低
|
||||
2. **验证成功率**:约 50%,受反爬虫机制影响
|
||||
3. **仅供学习**:请遵守网站服务条款,不要用于商业或恶意用途
|
||||
4. **平台限制**:短信自动读取仅适用于 macOS,且需为终端授予完全磁盘访问权限
|
||||
|
||||
## 相关文档
|
||||
|
||||
@@ -114,6 +129,25 @@ DOUBAN_PHONE=手机号 # 登录手机号(必填)
|
||||
|
||||
## 升级指南
|
||||
|
||||
### 从 v1.1.0 升级到 v1.2.0
|
||||
|
||||
**新增依赖**:
|
||||
```bash
|
||||
npm install
|
||||
```
|
||||
|
||||
**系统配置**:
|
||||
- macOS “隐私与安全性” → “完全磁盘访问权限”,添加并勾选运行脚本的终端;
|
||||
- 修改后需重新启动终端或 VS Code。
|
||||
|
||||
**代码变更**:
|
||||
- `src/login.ts` 自动调用 `waitForDoubanCode` 读取短信;
|
||||
- 新增 `src/sms/` 模块负责解析 `chat.db`;
|
||||
- 读取失败会保留手动输入流程,无需额外开关。
|
||||
|
||||
**回退策略**:
|
||||
- 若不希望开启自动读取,可在提示出现时直接手动输入验证码,无需修改代码。
|
||||
|
||||
### 从 v1.0.0 升级到 v1.1.0
|
||||
|
||||
**新增依赖**:
|
||||
@@ -149,4 +183,4 @@ export DOUBAN_AUTO_SLIDER=1
|
||||
|
||||
---
|
||||
|
||||
**v1.1.0** - 从手动验证到 AI 自动化的飞跃 🎉
|
||||
**v1.2.0** - AI 滑块 + macOS 短信自动读取,让登录更丝滑 🎉
|
||||
|
||||
Reference in New Issue
Block a user