ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

OutlookRegister 验证码处理指南:3种 captcha_strategy 模式如何快速通过微软长按验证

OutlookRegister 验证码处理指南:3种 captcha_strategy 模式如何快速通过微软长按验证

【免费下载链接】OutlookRegister

Outlook/Hotmail account batch registration tool. Outlook / Hotmail 账号批量注册工具,支持自动获取 OAuth2 refresh_token

项目地址:https://gitcode.com/gh_mirrors/out/OutlookRegister
点击查看免费下载

OutlookRegister 是一款 Outlook / Hotmail 账号批量注册工具,基于 patchright 浏览器自动化,自动完成填表、微软长按验证(按住式 captcha)、进邮箱和获取 OAuth2 refresh_token 全流程。其中最容易卡住的环节就是验证码:微软对自动化操作的风控非常敏感,选对captcha_strategy模式,能直接决定你的批量注册成功率。本文用 3 种模式 + 1 张对照表,讲清楚每种模式怎么配、什么时候切换、失败了如何排错。

3种 captcha_strategy 模式速览:一张表看懂怎么选

在 config.example.json 中,验证码策略由captcha_strategy一个字段控制,取值 0 / 1 / 2:

值模式行为适合场景
0全自动程序自动按压验证码 + 进邮箱 + OAuth,全程无人值守代理 IP 质量好的正式批量任务
1半自动程序暂停,你手动按验证码,其余自动全自动频繁失败、想人工兜底时
2人工交接程序只自动填表到验证码界面,过码、进邮箱、OAuth 全部人工高危控 IP / 小批量高价值账号

三种模式的源码入口都在 controllers/outlook_controller.py 的handle_captcha中分发;策略 2 在填表流程内提前交接,见 outlook_controller.py。

模式 0:全自动长按验证,最适合批量挂机

captcha_strategy: 0是默认值。全自动模式并非简单模拟一次点击,而是一套拟人化按压流程(实现见 outlook_controller.py 的_captcha_hold):

  1. 前置伪装:验证码前先随机滚动、鼠标游荡、停顿,模拟真人浏览;
  2. 曲线移动:从远处沿 Bezier 曲线加速接近目标,中途随机过冲再修正,避免机械直线轨迹;
  3. 双击 + 长按:先 double-tap 再按下,按住期间做圆形微颤,等待验证按钮 2 出现;
  4. 按钮 2 点击:在 click / dblclick 两种轻量偏置间轮换执行;
  5. 失败重试:每轮未通过就换按压点再来,最多max_captcha_retries + 1轮。

关键配套参数(均在 config.example.json 中):

{ "bot_protection_wait": 15, "max_captcha_retries": 3, "captcha_strategy": 0 }
  • bot_protection_wait:填表节奏基准(秒),值越大动作越"慢",风控更友好,但速度变慢;
  • max_captcha_retries:按压额外重试次数,约对应max_captcha_retries + 1轮 Hold,默认 3 即最多 4 轮。

💡 小技巧:全自动模式建议配合headless: false先小批量验证 IP 质量,稳定后再考虑批量;IP 表现会被程序实时统计(见 main.py 的 Breakdown 汇总),"btn2从未出现"占比高时优先换 IP,而不是加大重试。

模式 1:半自动过码,程序等你 5 分钟

当全自动在你当前 IP 段连续失败时,切到captcha_strategy: 1:程序自动填完表单后主动暂停,日志提示「请手动完成验证码按压」,你只需在浏览器里按住验证码完成验证即可。

半自动的等待逻辑见 outlook_controller.py 的_captcha_manual:

  • 程序每秒轮询一次页面 URL,检测是否已进入outlook.live.com/mail/0/;
  • 一旦进入邮箱,立即接管后续流程:跳过辅助邮箱拦截、进收件箱、继续跑 OAuth2 拿 refresh_token;
  • 最长等待 5 分钟,超时未进入邮箱则本次任务记为失败。

注意两点:

  1. 该模式必须headless: false,否则你看不到验证码窗口;
  2. 手动按码的速度要快,5 分钟内要完成"过码 + 页面加载进邮箱",并发任务多时建议把concurrent_flows调小,逐个处理。

模式 2:验证码界面人工交接,程序只管填表

captcha_strategy: 2是"最保守"的模式:程序只自动完成注册表单填写,到达长按验证界面后就整个任务交接给人(outlook_controller.py),过码、绑定辅助邮箱、登录进邮箱、OAuth 授权全部手动完成。

在 main.py 中可以看到,策略 2 的任务返回handed_off后:

  • 程序不再执行 OAuth,也不会把 token 写入Results/oauth2.txt;
  • 该任务直接计为成功(交接完成即算任务结束);
  • 浏览器保持打开,等你手动走完剩余流程。

适合场景:🔑 小批量、高价值账号,或 IP 风控极强、自动化基本无解的环境。缺点是吞吐低,不适合跑几百上千的任务量。

验证码总失败?先看这 3 类日志

三种模式共用同一套失败归因(main.py Breakdown 会分类统计):

日志 / 现象含义处理建议
FunCaptcha(页面出现iframe#enforcementFrame)当前 IP 触发的是 FunCaptcha,而不是本程序支持的按压验证码该 IP 暂不支持,直接换 IP(见 outlook_controller.py)
一些异常活动/ip_blockedIP 已被微软风控拦截更换代理出口,勿用同一 IP 反复尝试
btn2从未出现按压了但验证按钮 2 没出现程序会对该 IP 加重惩罚(penalty=4),连续出现说明 IP 质量差
btn2出现后失败按钮出现了但验证未通过可先调大bot_protection_wait或改用模式 1 人工兜底

排错顺序建议:先换 IP → 再调节奏参数 → 最后降级到模式 1 / 2,多数情况下第一步就能解决。

配置文件最快上手步骤

# 1. 准备配置 cp config.example.json config.json # 2. 编辑 config.json:至少填好 proxy.host 与 captcha_strategy # 3. 安装依赖并运行 pip install -r requirements.txt patchright install chromium python main.py

成功账号会以邮箱----密码----client_id----refresh_token格式追加写入Results/oauth2.txt,过程日志在log/目录。完整字段说明可参考 README.zh-CN.md 的config.json 字段说明章节,参数默认值见 config.example.json。

小结:按 IP 质量三档切换

  • ✅IP 干净:保持captcha_strategy: 0全自动,把max_captcha_retries设为 3,放心挂机;
  • 🔁全自动时好时坏:切1半自动,人工 5 分钟内过码,其余交给程序;
  • 🛡️IP 高危 / 小批量:切2交接模式,程序填表、人工收尾,稳字当头。

掌握这三种captcha_strategy模式的切换时机,配合 Breakdown 日志判断 IP 质量,就能在批量注册中把微软长按验证这一关走得又快又稳。

【免费下载链接】OutlookRegister

Outlook/Hotmail account batch registration tool. Outlook / Hotmail 账号批量注册工具,支持自动获取 OAuth2 refresh_token

项目地址:https://gitcode.com/gh_mirrors/out/OutlookRegister
点击查看免费下载

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进