# 任务:删除 CAPSOLVER 相关代码 ## Analysis ### CAPSOLVER 代码位置分析 通过完整阅读 `windsurf.js` 文件,发现 CAPSOLVER 相关代码分布在以下位置: #### 1. 构造函数中的初始化 (第34-40行) - 初始化 `this.capsolverKey` 变量 - 输出 CapSolver 启用/未配置的日志 #### 2. 浏览器初始化中的提示 (第319-327行) - 在 `initBrowser()` 方法中提示用户安装 CapSolver 扩展 #### 3. 步骤2中的自动验证处理 (第543-580行) - 在 `step2_setPassword()` 中使用 CapSolver 扩展自动处理 Turnstile - 包含等待验证完成的逻辑 #### 4. 废弃的 API 方法 (第597-1021行) - `solveWithCapSolver()` 方法 - 已标记为 @deprecated - 使用 CapSolver API 方式(不是扩展方式) #### 5. Cloudflare 验证处理方法 (第1023-1176行) - `handleCloudflareVerification()` 方法 - 前半部分使用 CapSolver 扩展自动处理 - 后半部分回退到手动模式(使用 CloudflareHandler) ### 核心依赖关系 - **步骤2 (`step2_setPassword()`)**: 依赖 CapSolver 进行 Turnstile 验证 - **手动验证回退**: 已有 `CloudflareHandler` 作为手动验证方案 - **环境变量**: `CAPSOLVER_API_KEY` 在 `.env` 文件中配置 ### 删除策略 1. **保留手动验证逻辑**: CloudflareHandler 必须保留 2. **删除 CapSolver 扩展相关代码**: 包括初始化、提示、自动处理逻辑 3. **删除废弃的 API 方法**: 完整移除 `solveWithCapSolver()` 方法 4. **简化验证流程**: 直接使用手动验证,不再尝试自动验证 ## Proposed Solution ### 方案选择:渐进式删除 采用安全的渐进式删除策略,确保每一步修改后代码仍可正常运行: 1. **删除构造函数中的 CapSolver 初始化** - 移除 `this.capsolverKey` 变量 - 移除相关日志输出 2. **删除浏览器初始化中的 CapSolver 提示** - 移除扩展安装提示 3. **简化 step2_setPassword() 方法** - 移除 CapSolver 扩展自动处理部分(第543-580行) - 保留按钮点击和页面跳转逻辑 4. **删除 solveWithCapSolver() 方法** - 完整移除整个方法(第597-1021行) 5. **简化 handleCloudflareVerification() 方法** - 移除 CapSolver 扩展自动处理部分(第1027-1074行) - 直接使用 CloudflareHandler 手动验证 ### 优势 - 代码更简洁,移除未使用的自动化依赖 - 保留完整的手动验证流程 - 不影响现有功能逻辑 ## Plan ### 步骤1: 删除构造函数中的 CapSolver 初始化 - 文件: `windsurf.js` - 行数: 34-40 - 操作: 删除 `this.capsolverKey` 及相关日志 ### 步骤2: 删除浏览器初始化中的提示 - 文件: `windsurf.js` - 行数: 319-327 - 操作: 删除 CapSolver 扩展提示 ### 步骤3: 简化 step2_setPassword() 方法 - 文件: `windsurf.js` - 行数: 543-580 - 操作: 删除 CapSolver 自动验证逻辑 ### 步骤4: 删除 solveWithCapSolver() 方法 - 文件: `windsurf.js` - 行数: 597-1021 - 操作: 完整删除整个方法及其注释 ### 步骤5: 简化 handleCloudflareVerification() 方法 - 文件: `windsurf.js` - 行数: 1027-1074 - 操作: 删除 CapSolver 扩展处理部分,直接使用手动验证 ## Progress - [ ] 步骤1: 删除构造函数中的 CapSolver 初始化 - [ ] 步骤2: 删除浏览器初始化中的提示 - [ ] 步骤3: 简化 step2_setPassword() - [ ] 步骤4: 删除 solveWithCapSolver() 方法 - [ ] 步骤5: 简化 handleCloudflareVerification() - [ ] 验证: 检查代码逻辑完整性