验证码识别 API

EverySolve 是一个验证码识别接口:52 种验证码类型共用同一个端点 POST /api/v1/captcha, 换一种验证码只改请求里 type 这一个字段, 解析代码一行不用动。按成功计费 —— 失败或空结果不形成最终扣款;如有预留则恢复。

52 种类型$0.14 / 千次 – $4.58 / 千次9 种解的形状
一个端点,全部类型
curl -X POST https://api.everyinfra.com/api/v1/captcha \
  -H "Authorization: Bearer 你的 API Key" \
  -H "Content-Type: application/json" \
  -d '{"type":"turnstile","website_url":"https://example.com","website_key":"0x4AAA..."}'

怎么判断目标站用的是哪一种

按信号强度从强到弱查,通常前两步就能定下来。

  1. ① 看页面加载了哪些第三方 script —— 域名几乎是一对一的:recaptcha/api.js、challenges.cloudflare.com、hcaptcha.com。 带品牌的组件大多在这一步就能认出来。
  2. ② 看容器上的 data 属性 —— 参数通常就在那里。但注意data-sitekey 这个名字是多家组件共用的, 光靠它区分不出是哪一家,必须配合第①步的 script 域名; 也有用别的名字的,比如 data-pkey。
  3. ③ 在控制台查全局对象 —— script 被打包混淆、域名看不出来时这一步仍然有效:grecaptcha(再查grecaptcha.enterprise 区分是不是 Enterprise)、window.gokuProps、window._pxAppId、window.smartCaptcha、window.AliyunCaptchaConfig。
  4. ④ 如果是整页被挡住,而不是表单里的一个组件 —— 那属于「反爬平台的整页拦截」这一类,判据在 Cookie 名与响应头 (比如 __cf_ 前缀)。 这一类解出来拿到的是 Cookie 而不是 token, 后续请求要带着它。
  5. ⑤ 如果手上只有一张图或一道题, 根本没有目标页面 —— 走「图像与题型识别」,按题目形式选 (认字 / 点选 / 框选 / 算术),这一类不需要website_url。

有品牌的验证码组件

页面上能看到具体是哪一家的组件 —— 通常在表单里,解出来填回一个字段

Akamai Bot Manager(移动端 SDK)
与 Akamai Bot Manager 的区别
一组字段(要一起提交)$4.58 / 千次
Akamai sec-cpt 挑战令牌
与 Akamai Bot Manager 的区别
一个 token 字符串$3.06 / 千次
阿里云验证码
与 5 秒盾 的区别
一个 token 字符串$1.25 / 千次
ALTCHA
与 Friendly Captcha 的区别
一个 token 字符串$1.53 / 千次
atbCAPTCHA
参数 apiServer 从哪取
一个 token 字符串$2.22 / 千次
音频验证码识别(语音 → 文字)
与 Google 的区别
一段文字$0.83 / 千次
AWS WAF 图像识别(九宫格 / 找目标)
与 AWS WAF 挑战 的区别
一组坐标点$0.97 / 千次
Basilisk(又名 Faucet Pay)
参数 basiliskcaptcha 从哪取
一组字段(要一起提交)$1.53 / 千次
Binance 验证码
与 GeeTest 的区别
一个 token 字符串$3.06 / 千次
BotDeflector
与 Friendly Captcha 的区别
一组坐标点$2.36 / 千次
框选验证码(把目标框起来)
参数 Page.captureScreenshot 从哪取
一组矩形框$1.81 / 千次
CaptchaFox
参数 cf-captcha-response 从哪取
一个 token 字符串$1.53 / 千次
Capy Puzzle
与 Lemin Cropped Captcha 的区别
一组字段(要一起提交)$3.06 / 千次
Castle(反欺诈请求令牌)
参数 castle.io 从哪取
一组 token$0.97 / 千次
点选坐标(在图上按要求点几下)
与 Shein 图标框选 的区别
一组坐标点$1.81 / 千次
Cutcaptcha
参数 data-apikey 从哪取
一个 token 字符串$2.22 / 千次
CyberSiARA
与 PerimeterX / HUMAN Security 的区别
一个 token 字符串$2.22 / 千次
Friendly Captcha
与 ALTCHA 的区别
一个 token 字符串$2.22 / 千次
FunCaptcha / Arkose Labs
参数 arkoselabs.com 从哪取
一个 token 字符串$1.67 / 千次
极验 GeeTest v4
参数 initGeetest4 从哪取
一组字段(要一起提交)$2.08 / 千次
hCaptcha(勾选框 / 隐藏式)
参数 hcaptcha.execute 从哪取
一个 token 字符串$4.58 / 千次
Hunt Captcha
X-HD 怎么用
一个 token 字符串$1.53 / 千次
图形验证码识别(图片 → 文字)
与 文字问答验证码 的区别
一段文字$0.83 / 千次
Kasada Bot Defense
与 Kasada 单次令牌 的区别
一组字段(要一起提交)$3.06 / 千次
Kasada 单次令牌(CD)
与 Kasada Bot Defense 的区别
一组字段(要一起提交)$1.53 / 千次
Lemin Cropped Captcha
与 Capy Puzzle 的区别
一组字段(要一起提交)$1.53 / 千次
MTCaptcha
参数 mtcaptcha-verifiedtoken 从哪取
一个 token 字符串$2.22 / 千次
Prosopo Procaptcha
参数 procaptcha 从哪取
一个 token 字符串$2.08 / 千次
reCAPTCHA 九宫格识图(只识别,不过盾)
参数 img.rc-image-tile-33 从哪取
一组格子编号$0.69 / 千次
reCAPTCHA v2(勾选框 / 隐藏式)
与 reCAPTCHA v3 的区别
一个 token 字符串$1.11 / 千次
reCAPTCHA v2 Enterprise
与 reCAPTCHA 九宫格识图 的区别
一个 token 字符串$1.53 / 千次
reCAPTCHA v3(打分式,无交互)
参数 ___grecaptcha_cfg.clients 从哪取
一个 token 字符串$1.39 / 千次
reCAPTCHA v3 Enterprise
参数 enterprise.execute 从哪取
一个 token 字符串$3.06 / 千次
旋转对齐(把图转正,返回角度)
参数 passport.baidu.com 从哪取
一个数字$1.53 / 千次
Shein 图标框选
参数 rects 从哪取
一组矩形框$2.36 / 千次
滑块验证码(算出要拖多远)
与 DataDome 滑块 的区别
一个数字$2.36 / 千次
Temu 图片验证码
参数 parts 从哪取
一组坐标点$1.53 / 千次
腾讯天御 TenDI 防水墙
参数 CaptchaAppId 从哪取
一组字段(要一起提交)$2.5 / 千次
文字问答验证码(无图,纯文本题)
参数 edit-captcha-response 从哪取
一段文字$0.83 / 千次
Cloudflare Turnstile
与 Cloudflare 挑战页 的区别
一个 token 字符串$1.53 / 千次
Yandex SmartCaptcha
参数 smartcaptcha.yandexcloud.net 从哪取
一个 token 字符串$4.58 / 千次
网易易盾 NECaptcha
与 GeeTest 的区别
一个 token 字符串$1.53 / 千次

反爬平台的整页拦截

不是表单里的小组件,而是整页把你挡在外面 —— 解出来拿到的是 Cookie

解出来是什么形状,怎么用

响应里 solution 的结构按类型分成9 种。同一形状的类型可以共用一段解析代码。

解的形状拿到什么怎么用类型数
token一个 token 字符串填进表单里那个隐藏字段,或按目标站的要求随请求带上21
cookie一串 Cookie写进后续请求的 Cookie 头,之后正常访问10
fields一组字段(要一起提交)全部字段一起提交 —— 少带一个就通不过8
points一组坐标点按返回的顺序在原图上依次点击4
text一段文字把识别出的文字填进输入框3
boxes一组矩形框按矩形框在原图上框选或点击框内2
number一个数字把算出的数字填进输入框2
indices一组格子编号按编号点格子(0 起,从左上角按行数)1
tokens一组 token同 token,但要按各自的字段名分别填1

常见问题

怎么知道目标站用的是哪一种验证码?

按信号强度从强到弱查:先看页面加载了哪些第三方 script,域名几乎一对一(recaptcha/api.js、challenges.cloudflare.com、hcaptcha.com);再看容器上的 data 属性,参数通常就在那里,但 data-sitekey 这个名字是多家组件共用的,光靠它区分不出厂商;script 被混淆时改在控制台查全局对象(grecaptcha、window.gokuProps、window._pxAppId、window.smartCaptcha)。如果是整页被挡住而不是表单里的一个组件,那属于反爬平台的整页拦截,判据在 Cookie 名与响应头,解出来拿到的是 Cookie 而不是 token。

解不出来会扣钱吗?

不会形成最终扣款。按成功计费;失败或返回空结果时,如有预留费用会恢复。账单按次记,标价按每千次只是为了让量级读得出来。

从一种验证码换到另一种,代码要改多少?

端点不变(POST /api/v1/captcha),请求里只改 type 一个字段。真正要跟着改的是两处:参数因类型而异(表单类组件通常要 website_url 加一个 key,图像题型只要图本身),以及解的形状可能不同 —— 9 种形状里,同一形状的类型可以共用同一段解析代码。

能力目录里那个 available 字段是什么意思?

GET /api/v1/captcha/types 不鉴权、免费,返回全部 52 种类型的参数、解的形状和单价。其中 available 反映的是此刻这一种能不能真的解出来,而不是我们支持列表里登记了没有 —— 它会变,所以别把这份目录缓存成静态数据。程序里按它决定要不要发这次请求,比发出去再处理失败更省事。

开始接入

注册即可调用,按成功计费;失败或空结果不形成最终扣款,如有预留则恢复。