update at 2025-10-26 10:24:17

This commit is contained in:
douboer
2025-10-26 10:24:17 +08:00
parent bd8da1d56a
commit 06ac359162
14 changed files with 934 additions and 154 deletions

View File

@@ -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 短信自动读取让登录更丝滑 🎉