Anti-Captcha был одним из первых участников рынка решения CAPTCHA. Он предлагает собственный JSON API и широкий охват типов CAPTCHA. Но разработчики сталкиваются с ограничениями, поскольку сайты внедряют новые методы защиты — полный стек Cloudflare, BLS CAPTCHA и критически важные рабочие процессы reCAPTCHA v3.
Вот почему команды переходят на CaptchaAI.
Основные болевые точки
1. Покрытие страница Cloudflare-защиты в staging
Anti-Captcha поддерживает токены Cloudflare Turnstile, но не обрабатывает полные страницы страница Cloudflare-защиты в staging или задачи JS:
| Тип облачной вспышки | Anti-Captcha | CaptchaAI |
|---|---|---|
| Cloudflare Turnstile (управляемый) | ✅ | ✅ 100% |
| Cloudflare Turnstile (невидимый) | Частичный | ✅ |
| страница Cloudflare-защиты в staging | ❌ | ✅ |
| JS-вызов | ❌ | ✅ |
Многие цели парсинга теперь используют страницы страница Cloudflare-защиты в staging (а не только виджеты Turnstile). Пользователи Anti-Captcha блокируются; Пользователи CaptchaAI этого не делают.
2. Различия в подходах API
Anti-Captcha использует собственный API на основе задач JSON. CaptchaAI использует широко распространенный формат, совместимый с 2Captcha:
# Anti-Captcha — custom JSON format
import requests
resp = requests.post("https://api.anti-captcha.com/createTask", json={
"clientKey": "ANTICAPTCHA_KEY",
"task": {
"type": "RecaptchaV2TaskProxyless",
"websiteURL": "https://example.com",
"websiteKey": "SITE_KEY",
}
})
task_id = resp.json()["taskId"]
# Poll with different endpoint and format
result = requests.post("https://api.anti-captcha.com/getTaskResult", json={
"clientKey": "ANTICAPTCHA_KEY",
"taskId": task_id,
})
# CaptchaAI — standard 2Captcha-compatible format
import requests
resp = requests.post("https://ocr.captchaai.com/in.php", data={
"key": "YOUR_API_KEY",
"method": "userrecaptcha",
"googlekey": "SITE_KEY",
"pageurl": "https://example.com",
"json": 1,
})
task_id = resp.json()["request"]
# Standard polling
result = requests.get("https://ocr.captchaai.com/res.php", params={
"key": "YOUR_API_KEY",
"action": "get",
"id": task_id,
"json": 1,
})
Формат 2Captcha поддерживается сотнями инструментов, библиотек и фреймворков. Переход на CaptchaAI требует минимальных изменений кода для команд, уже использующих оболочки, совместимые с 2Captcha.
3. Поддержка BLS CAPTCHA
Автоматизация правительственных порталов, системы назначения виз и сбор данных о труде требуют решения BLS CAPTCHA:
# CaptchaAI — BLS at 100% accuracy
resp = requests.post("https://ocr.captchaai.com/in.php", data={
"key": "YOUR_API_KEY",
"method": "bls",
"pageurl": "https://bls-portal.example.com",
"sitekey": "BLS_SITE_KEY",
"json": 1,
})
В AntiCaptcha нет метода BLS. Команды, нуждающиеся в доступе к правительственному порталу, должны переключиться.
4. Оценка качества reCAPTCHA v3
| Поставщик | Средний балл v3 | Контроль очков |
|---|---|---|
| Anti-Captcha | 0,3-0,5 | Ограниченный |
Низкие оценки v3 вызывают обнаружение ботов. Подход Anti-Captcha с участием человека дает разные оценки. Механизм искусственного интеллекта CaptchaAI стабильно набирает высокие баллы.
5. Точность GeeTest
| Версия GeeTest | Anti-Captcha | CaptchaAI |
|---|---|---|
| GeeTest v3 | 85-90% | 100% |
| GeeTest v4 | 80-85% | ориентировочное значение |
Сравнение функций
| Особенность | Anti-Captcha | CaptchaAI |
|---|---|---|
| reCAPTCHA v2 | ✅ | ✅ |
| reCAPTCHA v3 | ✅ (низкие баллы) | ✅ Контроль очков |
| reCAPTCHA Предприятие | ✅ | ✅ |
| Невидимая reCAPTCHA | ✅ | ✅ |
| Cloudflare Turnstile | ✅ | ✅ 100% |
| страница Cloudflare-защиты в staging | ❌ | ✅ |
| GeeTest v3 | ✅ | ✅ 100% |
| БЛС | ❌ | ✅ 100% |
| Изображение/OCR | ✅ | ✅ 27 500+ типов |
| Формат API | Пользовательский JSON | 2Совместимость с Captcha |
| Поддержка прокси | ✅ | ✅ |
| Перезвонить | ✅ | ✅ |
Сравнение скорости
| Тип капчи | Anti-Captcha | CaptchaAI |
|---|---|---|
| reCAPTCHA v2 | 15-45 лет | 10–20 секунд |
| reCAPTCHA v3 | 10–30 секунд | 5–15 с. |
| Капча изображения | 5–15 с. | 2–5 с. |
| Cloudflare Turnstile | 10–30 секунд | 3-10 с |
| GeeTest v3 | 15-40 с | 5–15 с. |
Путь миграции
Форматы API различаются, поэтому миграция требует обновления обработки вашего запроса/response. Вот оболочка, которая поддерживает оба варианта во время перехода:
import requests
import time
class CaptchaSolver:
"""Unified solver — supports Anti-Captcha and CaptchaAI."""
def __init__(self, provider="captchaai", api_key="YOUR_API_KEY"):
self.provider = provider
self.api_key = api_key
def solve_recaptcha_v2(self, sitekey, pageurl):
if self.provider == "captchaai":
return self._solve_captchaai("userrecaptcha", sitekey, pageurl)
else:
return self._solve_anticaptcha(sitekey, pageurl)
def _solve_captchaai(self, method, sitekey, pageurl):
resp = requests.post("https://ocr.captchaai.com/in.php", data={
"key": self.api_key,
"method": method,
"googlekey": sitekey,
"pageurl": pageurl,
"json": 1,
})
task_id = resp.json()["request"]
for _ in range(60):
time.sleep(5)
result = requests.get("https://ocr.captchaai.com/res.php", params={
"key": self.api_key, "action": "get",
"id": task_id, "json": 1,
})
data = result.json()
if data["request"] != "CAPCHA_NOT_READY":
return data["request"]
raise TimeoutError("Solve timeout")
def _solve_anticaptcha(self, sitekey, pageurl):
resp = requests.post("https://api.anti-captcha.com/createTask", json={
"clientKey": self.api_key,
"task": {
"type": "RecaptchaV2TaskProxyless",
"websiteURL": pageurl,
"websiteKey": sitekey,
},
})
task_id = resp.json()["taskId"]
for _ in range(60):
time.sleep(5)
result = requests.post(
"https://api.anti-captcha.com/getTaskResult",
json={"clientKey": self.api_key, "taskId": task_id},
)
data = result.json()
if data["status"] == "ready":
return data["solution"]["gRecaptchaResponse"]
raise TimeoutError("Solve timeout")
Используйте provider="captchaai" для новых проектов. Перенесите существующие проекты, изменив параметр конструктора.
Поиск неисправностей
| Проблема | Причина | Исправить |
|---|---|---|
| Другой формат API | Anti-Captcha использует задачи JSON | Формат запроса обновления согласно приведенным выше примерам |
Отсутствует поле method. |
Anti-Captcha использует type в задаче |
Переключитесь на method=userrecaptcha для CaptchaAI |
| Неверный формат опроса | Другая конечная точка результата | Используйте GET для /res.php с action=get |
| Тип задачи не найден | Названия задач Антикапчи различаются | Используйте имена методов CaptchaAI: userrecaptcha, turnstile, bls. |
Часто задаваемые вопросы
Трудна ли миграция, поскольку форматы API различаются?
Формат API другой, но простой. Основная логика (отправить → опрос → получить результат) та же самая. В большинстве случаев миграция изменений кода занимает 15–30 минут.
Могу ли я использовать библиотеки-оболочки Anti-Captcha с CaptchaAI?
Не напрямую — форматы API различаются. Однако CaptchaAI совместим с любой библиотекой-оболочкой 2Captcha, которая более широко доступна.
Поддерживает ли CaptchaAI переадресацию прокси-сервера Anti-Captcha?
Да. CaptchaAI поддерживает параметры прокси (proxy, proxytype) в стандартном формате запроса.
Связанные руководства
Улучшите решение CAPTCHA —попробуйте CaptchaAI бесплатнос улучшенной поддержкой Cloudflare и BLS.