CAPTCHA Recognition

多引擎验证码识别:ddddocr 本地模型(OCR 文字识别 / 目标检测 / 滑块缺口匹配)与超级鹰打码平台(通用图片识别 / 报错返分 / 查询题分)。

/api/ddddocr/

Service Description

验证码识别服务按「线路」聚合多种识别引擎:当前接入 ddddocr(本地模型)与 超级鹰(第三方打码平台),在上方线路 Tab 之间切换即可查看各自的接口与调试面板。

ddddocr 线路(/api/ddddocr/):纯本地模型,无需第三方账号、无额外费用。识别图片中的文字、检测图片内的目标位置,以及匹配滑块验证码的缺口位置(两种算法)。识别实例的字符范围可配置(预定义编号或自定义字符集),识别特定站点的验证码前先设置字符集通常能明显提升准确率。

超级鹰线路(/api/chaojiying/):第三方人工 + 智能打码平台,通用图片识别,账号由本站统一配置、调用方无需自备。按题分计费,上传即扣费(无论最终识别对错);官方标准价 1 元 = 1000 题分(充值有赠送,实际单价低于此)。调用前请用 codetype 精确匹配图片内容 —— 类型选得越准,识别越快越准,花费也越低。各识别类型的官方单价与折合人民币如下:

识别类型 说明 题分 折合人民币(约)
1902 4~6位英文数字 10/12/15 0.01~0.015 元
1004 1~4位英文数字 10 0.01 元
1005 1~5位英文数字 12 0.012 元
1006 1~6位英文数字 15 0.015 元
1007 1~7位英文数字 17.5 0.0175 元
1008 1~8位英文数字 20 0.02 元
1009 1~9位英文数字 22.5 0.0225 元
1010 1~10位英文数字 25 0.025 元
1012 1~12位英文数字 30 0.03 元
1020 1~20位英文数字 50 0.05 元
2001 1位纯汉字 10 0.01 元
2002 1~2位纯汉字 20 0.02 元
2003 1~3位纯汉字 30 0.03 元
2004 1~4位纯汉字 40 0.04 元
2005 1~5位纯汉字 50 0.05 元
2006 1~6位纯汉字 60 0.06 元
2007 1~7位纯汉字 70 0.07 元
3004 1~4位纯英文 10 0.01 元
3005 1~5位纯英文 12 0.012 元
3006 1~6位纯英文 15 0.015 元
3007 1~7位纯英文 17.5 0.0175 元
3008 1~8位纯英文 20 0.02 元
3012 1~12位纯英文 30 0.03 元
4004 1~4位纯数字 10 0.01 元
4005 1~5位纯数字 12 0.012 元
4006 1~6位纯数字 15 0.015 元
4007 1~7位纯数字 17.5 0.0175 元
4008 1~8位纯数字 20 0.02 元
5000 不定长汉字英文数字 2.5/英文, 10/汉字(基础10) 每英文 0.0025 元、每汉字 0.01 元(基础 0.01 元)
5108 8位英文数字(含特殊字符) 22 0.022 元
5201 拼音首字母 / 计算题 / 成语混合 首字母20, 计算20, 成语40 首字母 0.02 元 / 计算 0.02 元 / 成语 0.04 元
6001 计算题(返回计算结果) 15 0.015 元
6004 问答题 / 智能回答题 15 0.015 元
6900 中英数混合(配合8f指令取特定色彩) 基础10 每英文 0.0025 元、每汉字 0.01 元(基础 0.01 元)
9602 水平拼图的两个坐标 36 0.036 元
9801 按指定字符定位(返回指定字坐标) 9/定位, 最低28 每定位 0.009 元(最低 0.028 元)
9800 文字定位(返回所有字及坐标) 6/定位, 最低28 每定位 0.006 元(最低 0.028 元)
9901 定位图上有且仅有的一个图形块中心点坐标 16 0.016 元
9902 定位图上有且仅有的两个图形块中心点坐标 24 0.024 元
9900 定位各种滑块 / 缺口 / 色块 8/定位+8 每定位 0.008 元 + 基础 0.008 元
9101 按操作提示返回固定1个坐标 16 0.016 元
9102 按操作提示返回固定2个坐标 24 0.024 元
9103 按操作提示返回固定3个坐标 32 0.032 元
9104 按操作提示返回固定4个坐标 40 0.04 元
9004 按操作提示返回1~4个坐标 40 0.04 元
9005 按操作提示返回1~5个坐标 48 0.048 元
9006 按操作提示返回1~6个坐标 56 0.056 元
9008 按操作提示返回1~8个坐标 72 0.072 元
9009 按操作提示返回1~9个坐标 80 0.08 元

超级鹰结果校验:平台会随识别结果返回 md5,本站按官方算法 md5("软件ID,软件KEY,图片ID,图片结果") 逐条核验,校验不通过会以 4xxxx 拒绝返回,避免结果被中途篡改。

超级鹰报错返分:识别结果确实错误时,可凭识别接口返回的 pic_id 调「报错返分」退回题分。官方限制:须在拿到 pic_id 后 3 分钟内、部分类型不支持;仅允许在确认结果错误时调用,对正确结果报错会被评估信用。

This service requires project signature authentication. Accuracy depends on image quality and noise level, so plan for retries or a manual fallback on failures.

Response Format

Every endpoint returns the same JSON envelope; the payload is always inside data:

{
  "code": 10000,
  "msg": "成功",
  "data": { ... }
}
  • code: business status code. 10000 means success; anything else is an error — see the Error Codes page for the full list.
  • msg: a human-readable message you can show to end users, but never use it for program logic.
  • data: the payload; usually null on error. Each endpoint's Response section lists its data fields.

Judge success by code, not by the HTTP status code. View all error codes

ddddocr General Recognition

Python ddddocr (local model) Signature Required

Pure local model recognition with no third-party dependency callbacks. The first call loads the model, so a slower response is normal.

POST /api/ddddocr/ocr Total calls: 0

OCR Text Recognition

Recognize the text content in an image and return the recognized text; it can also return probability and filter by color.

Upload a local image (page debugging now supports real file upload)

or fill in the image URL / base64 (use when no local file is available)

When true, returns data={text, probability}; when false, data is the text

When true, apply white-background repair to images with a transparent channel

Optional: recognize only text of the specified colors, e.g. ["red","blue","green"]

Optional: an HSV range dictionary, used together with colors

When true, use the Beta OCR model (more accurate for some CAPTCHAs)

  • This Service requires a project signature; when uploading a file, the request body is multipart/form-data.
  • Provide at least one of the file field or the URL/base64 field; when both are provided, the file takes precedence.
Response Common envelope

data varies with the parameters: when probability=false it is the recognized text string; when probability=true it is an object {text, probability}, where probability is ddddocr's raw probability distribution.

Example response
"8k3m"
POST /api/ddddocr/set-ranges Total calls: 0

Set OCR Character Range

Set the character range of this recognition instance (a predefined number or a custom character set).

Required: predefined 0=digits/1=lowercase/2=uppercase/3=upper+lowercase/4=lowercase+digits/5=uppercase+digits/6=upper+lowercase+digits/7=default; or a custom string, e.g. "0123456789"

Optional: used together with the Beta model

  • Note: the backend creates a new recognition instance on every call; this Endpoint only applies to the instance of "that call" and does not change the character set of subsequent /ocr requests.
Response Common envelope

This endpoint returns no business data; data is null on success — judge the result from code and msg.

POST /api/ddddocr/detect Total calls: 0

Object Detection

Detect target positions in an image and return the bounding box and confidence of each target.

Upload a local image (page debugging now supports real file upload)

or fill in the image URL / base64 (use when no local file is available)

  • Provide at least one of the file field or the URL/base64 field; when both are provided, the file takes precedence.
Response Common envelope

data is an array of detection results; each element is [x1, y1, x2, y2], the top-left and bottom-right coordinates (in pixels) of a target's bounding box.

Example response
[[24, 60, 102, 138]]
POST /api/ddddocr/slide-match Total calls: 0

Slider Matching (Edge Matching Method)

Match the gap position of the slider thumbnail within the background image via edge detection (algorithm 1).

Upload a local image (page debugging now supports real file upload)

or fill in the image URL / base64 (use when no local file is available)

Upload a local image (page debugging now supports real file upload)

or fill in the image URL / base64 (use when no local file is available)

Optional: Default false

  • Provide at least one from each of the slider (slide_image / slide_image_url) and background (bg_image / bg_image_url); when both are provided, the file takes precedence.
Response Common envelope
Field Type Description
target_x int X coordinate of the gap's top-left corner
target_y int Y coordinate of the gap's top-left corner
Example response
{"target_x": 128, "target_y": 45}
POST /api/ddddocr/slide-comparison Total calls: 0

Slider Matching (Difference Comparison Method)

Locate the gap by directly comparing the difference between the slider image and the background image (algorithm 2).

Upload a local image (page debugging now supports real file upload)

or fill in the image URL / base64 (use when no local file is available)

Upload a local image (page debugging now supports real file upload)

or fill in the image URL / base64 (use when no local file is available)

  • Provide at least one from each of the slider (slide_image / slide_image_url) and background (bg_image / bg_image_url); when both are provided, the file takes precedence.
Response Common envelope
Field Type Description
target_x int X coordinate of the gap's top-left corner
target_y int Y coordinate of the gap's top-left corner
Example response
{"target_x": 128, "target_y": 45}
XiaoYingAPI · Unified API Aggregation Service