AI开源验证码识别完全指南:从字符到行为验证,一文搞定

作者:

验证码,互联网世界的”门卫”。从最早的扭曲字母到如今的极验v4图标点选,验证码技术在不断进化,而AI破解方案也在同步迭代。

今天这篇文章,我们从实际工程角度出发,梳理当前最成熟的开源验证码识别方案,帮你快速选型、拿来就用。

一、先搞清楚:你要打哪种验证码?

不同验证码类型,技术路线完全不同。选错方案,事倍功半。

验证码类型 典型特征 推荐技术路线

|—|—|—|

字符/算数型 数字字母/中文/算式图片 ddddocr 开箱 / CRNN+CTC 自训
滑块验证码 背景图 + 缺口图 ddddocr slide_match / captcha-recognizer
点选类(汉字/图标) “依次点击 花 树 鱼” YOLO 定位 + CRNN 识别
reCAPTCHA / hCaptcha / Turnstile 浏览器交互 + 行为验证 OhMyCaptcha(多模态 + Playwright)
复杂粘连/特殊字体 传统 OCR 跪的那种 多模态 VLMs(Gemini Vision / GPT-4V)

二、开箱即用:零训练直接上

1. ddddocr —— 国内C位,综合最优

GitHub: github.com/sml2h3/ddddocr

协议: MIT,可商用

星标: 10000+

这是目前Python生态中最火的开源验证码识别库,没有之一。

核心能力:

  • 文字验证码(数字/字母/中文扭曲干扰)
  • 滑块缺口定位(slide_match)
  • 目标检测(汉字点选定位)
  • 平均识别耗时 100ms 以内,CPU 即可跑

技术架构:

  • OCR 用自研 CRNN+CTC(针对中文验证码优化)
  • 目标检测用 YOLO 系列
  • 滑块匹配用孪生网络
  • 推理走 ONNX Runtime,完全离线

一行代码搞定:

`python

import ddddocr

ocr = ddddocr.DdddOcr(show_ad=False)

result = ocr.classification(image_bytes)

`

滑块用法:

`python

slide = ddddocr.DdddOcr(det=False, show_ad=False)

result = slide.slide_match(target_bytes, background_bytes)

# 返回缺口坐标

`

💡 如果你只想要一个库通吃大部分常规验证码,直接上 ddddocr,基本不用折腾。

2. AntiCAP —— 全题型AI识别

GitHub: github.com/81NewArk/AntiCAP

架构: YOLOv8 + 孪生网络 + CRNN

唯一开源同时覆盖:

  • 文字验证码
  • 滑块、旋转验证
  • 文字点选、图标点选
  • 算术验证码

自带 Web 可视化后台,适合复杂人机验证场景。

3. captcha-recognizer —— 滑块专用

YOLOv8 检测缺口,比 ddddocr 的滑块精度更高,专攻拼图验证这一件事。

`python

from captcha_recognizer import Recognizer

result = Recognizer().identify_gap(image_path)

`

4. GeekedTest —— 极验v4专用破解

GitHub: github.com/xKiian/GeekedTest(627 星)

特点: 纯 HTTP 方案,不需要浏览器

支持极验 v4 的滑块、图标点选、五子棋三种验证码类型。通过 curl_cffi 模拟浏览器指纹,直接调用极验 API 完成验证。

`python

from geeked import Geeked

geeked = Geeked(“captcha_id”, “icon”)

seccode = geeked.solve()

`

5. NoCaptcha AI —— 浏览器扩展方案

GitHub: github.com/noCaptchaAi/NoCaptcha-Ai-Browser-Extension(335 星)

Chrome/Firefox 扩展,支持 reCAPTCHA v2、OCR 验证码,适合需要浏览器自动化的场景。

6. CaptchaSonic —— AI Agent 集成

GitHub: github.com/Captcha-Sonic/CaptchaSonic-Extension(39 星)

新项目,2024年12月创建

支持 Selenium、Puppeteer、Playwright 集成,还有 MCP Server 可直接被 AI Agent 调用。覆盖 Geetest、reCAPTCHA、AWS WAF 等多种验证码。

三、自己训练:追求极致准确率

当通用模型识别率不够时,就需要用自己的数据集训练专用模型。

1. captcha_trainer —— 工业级训练工具

GitHub: github.com/kerlomz/captcha_trainer

  • 支持 CNN+CRNN+CTC、DenseOCR、ViT 多模型可选
  • 完整可视化训练界面
  • 自动标注、自动生成训练集
  • 导出 ONNX 模型可直接给 ddddocr 加载

适合企业自有系统专属验证码,通用模型识别差时定制训练。

2. CRNN + CTC —— 经典文字验证码方案

技术栈: CNN 提特征 → 双向 LSTM 建模上下文 → CTC Loss 免分割

推荐项目:

  • XuMian-xm/OCR-captcha-crnn:6位英文数字,附带 YOLO 对比
  • sanniel0315/ai_captcha-streamlit:带 Streamlit UI,4位大写准确率 >95%

训练数据需求: 2000~5000 张同风格样本即可达到 90%+

3. YOLO + CRNN —— 点选类组合拳

流程:YOLO 框出所有候选字/图标 → CRNN 认每个框里是啥 → 按提示顺序点击

推荐项目:

  • 15950552800/Text_select_captcha:B站登录那种汉字点选,3000 张训练集
  • MianXu/Captcha_Recognizer:YOLO11 + CRNN,HuggingFace 可直接拉

四、大模型新路子:传统OCR搞不定时的王牌

有些验证码字体扭曲到爆炸,或者有语义理解需求,多模态 VLMs 反而比专用模型省事。

1. OhMyCaptcha —— 全能选手

FastAPI + Playwright + 本地 Qwen3.5-2B 多模态,支持 19 种验证类型:

  • reCAPTCHA v2/v3
  • hCaptcha
  • Cloudflare Turnstile
  • 各类行为验证码

兼容 YesCaptcha 的 createTask/getTaskResult 协议,支持 Docker 部署。

2. GPT-4V / Gemini Vision —— 降维打击

对于极其复杂的验证码,直接调用多模态大模型的视觉能力:

  • openai-captcha-detection:调 GPT-4o 识别,号称接近 100% 准确率
  • captcha-gemini:Cloudflare Workers + Gemini Pro Vision

3. GLM-OCR —— 国产轻量级

智谱开源的 0.9B 参数轻量 OCR 模型,多项基准 SOTA,API 调用成本极低。

4. auto_captcha —— 浏览器内自动识别

Chrome 扩展,集成通义千问 Qwen3-VL 视觉语言模型,在浏览器环境中自动识别并填写验证码。

五、行为验证破解:滑块、拼图、旋转

这类验证码单纯识别图片不够,需要模拟人类行为。

1. OpenCV + Playwright/Selenium —— 标准方案

`python

# 1. 模板匹配找缺口

import cv2

result = cv2.matchTemplate(background, target, cv2.TM_CCOEFF_NORMED)

gap_x = cv2.minMaxLoc(result)[3][0]

# 2. 贝塞尔曲线模拟人类轨迹

def bezier_curve(start, end, control, steps=30):

points = []

for t in [i/steps for i in range(steps+1)]:

x = (1-t)2 * start[0] + 2*(1-t)*t * control[0] + t2 * end[0]

y = (1-t)2 * start[1] + 2*(1-t)*t * control[1] + t2 * end[1]

points.append((x, y))

return points

`

2. Buster —— reCAPTCHA 语音绕过

利用 reCAPTCHA 的语音辅助功能,通过 Speech-to-Text API 自动识别语音内容,从而绕过图形验证。

六、选型速查表

项目 AI核心 文字验证码 滑块 点选/旋转 需要训练

|—|—|—|—|—|—|

ddddocr CRNN+YOLO ✅ 强 开箱即用
AntiCAP YOLOv8 ✅ 全部 开箱即用
GeekedTest 自研协议 开箱即用
captcha_trainer CRNN/ViT ✅ 极致 可训练 可训练 需数据集
captcha-recognizer YOLOv8 ✅ 专用 开箱即用
OhMyCaptcha Qwen3-VL 开箱即用
PaddleOCR PP-OCR 一般 开箱即用

七、实战建议

80% 场景: pip install ddddocr 一把梭,字符/滑块/中文点选都覆盖,离线、轻量、MIT 协议随便商用。

需要定制时: captcha_trainer 训练专属模型,2000~5000 张样本 90%+ 准确率。

极验/Cloudflare 等现代验证码: GeekedTest(纯HTTP)或 OhMyCaptcha(多模态+浏览器自动化)。

reCAPTCHA/hCaptcha: OhMyCaptcha 或 Buster 语音绕过。

八、合规提醒

验证码识别技术建议只用于:

  • 自有系统的自动化测试
  • 合规爬虫(遵守 robots 协议 + 《网络安全法》)
  • 无障碍辅助功能开发

所有工具本地离线运行,不上传图片至第三方。请勿用于恶意注册、刷票、暴力破解等非法用途。


总结: AI 验证码识别已经进入成熟期,ddddocr 覆盖 80% 场景,YOLO+CRNN 解决定制需求,多模态大模型处理极端情况。选对方案,验证码不再是障碍。

关注攀岩者,每天分享 AI 实战笔记,陪你从零基础到 AI 达人。

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注