update at 2025-10-25 23:39:25

This commit is contained in:
douboer
2025-10-25 23:39:25 +08:00
parent 3eae607591
commit bd8da1d56a
51 changed files with 4757 additions and 275 deletions

51
CHANGELOG.md Normal file
View File

@@ -0,0 +1,51 @@
# 更新日志
## [1.1.0] - 2025-10-25
### ✨ 新功能
- **自动滑块验证**: 集成 AI 驱动的滑块验证码识别和求解功能
- **多策略检测**: 实现暗区检测、边缘检测、颜色量化、LAB 色彩空间分析四种并行策略
- **双滑块识别**: 支持同时检测左侧滑块和右侧缺口,实现精确距离计算
- **可视化调试**: 自动生成带红框标记的检测结果图片,保存在 `output/` 目录
- **自动重试机制**: 验证失败时自动刷新并重试,最多 10 次
- **图像缩放优化**: 自动将验证码图片放大到 800px 宽度以提高识别精度
### 🔧 优化改进
- **简化距离计算**: 采用更简洁准确的算法
- 双滑块模式:`距离 = (缺口X - 滑块X) / scaleX`
- 移除了不必要的复杂坐标转换逻辑
- **拟人化滑动**: 使用 Playwright 的 `steps` 参数实现更平滑的鼠标移动轨迹
- **增强成功判断**: 检测腾讯验证码特有的成功标识(`.tc-success`
- **优化元素等待**: 增加 iframe 内元素加载的检测和重试机制
- **详细日志输出**: 添加完整的调试信息,便于问题追溯
### 🐛 Bug 修复
- 修复坐标系不统一导致的距离计算错误
- 修复 iframe 内元素无法正确访问的问题
- 修复候选框因边距过滤被误删的问题
- 修复截图时包含滑块本身导致识别干扰的问题
### 📝 文档更新
- 更新 `README.md`,添加详细的功能说明和使用指南
- 创建 `src/slider/README.md`,详细说明滑块识别算法和实现细节
- 添加调试技巧和常见问题排查指南
### 🏗️ 架构变更
-`captcha_cracker` 项目移植核心识别算法
- 新增 `src/slider/` 模块,包含完整的滑块验证功能
- 集成 Sharp 库用于图像处理
- 支持通过 `DOUBAN_AUTO_SLIDER=1` 环境变量启用自动滑块验证
## [1.0.0] - 2025-10-24
### 初始版本
- 基于 Playwright 的豆瓣登录自动化
- 短信验证码登录支持
- Cookie 持久化和复用
- 手动滑块验证提示