Anti-Captcha war einer der ersten Anbieter auf dem CAPTCHA-Lösungsmarkt. Es bietet eine benutzerdefinierte JSON-API und eine breite Abdeckung von CAPTCHA-Typen. Allerdings stoßen Entwickler auf Einschränkungen, wenn Websites neuere Schutzmethoden einführen – Cloudflares Full-Stack, BLS CAPTCHAs und bewertungskritische reCAPTCHA v3-Workflows.
Aus diesem Grund wechseln Teams zu CaptchaAI.
Die Kernschmerzpunkte
1. Cloudflare Challenge-Abdeckung
Anti-Captcha unterstützt Turnstile-Token, verarbeitet jedoch keine vollständigen Cloudflare Challenge-Seiten oder JS-Herausforderungen:
| Cloudflare-Typ | Anti-Captcha | CaptchaAI |
|---|---|---|
| Drehkreuz (verwaltet) | ✅ | ✅ 100 % |
| Drehkreuz (unsichtbar) | Teilweise | ✅ |
| Cloudflare Challenge | ❌ | ✅ |
| JS-Herausforderung | ❌ | ✅ |
Viele Scraping-Ziele verwenden jetzt Cloudflare Challenge-Seiten (nicht nur Drehkreuz-Widgets). Anti-Captcha-Benutzer werden blockiert; CaptchaAI-Benutzer tun dies nicht.
2. Unterschiede im API-Ansatz
Anti-Captcha verwendet eine benutzerdefinierte aufgabenbasierte JSON-API. CaptchaAI verwendet das weit verbreitete 2Captcha-kompatible Format:
# 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,
})
Das 2Captcha-Format wird von Hunderten von Tools, Bibliotheken und Frameworks unterstützt. Die Migration zu CaptchaAI erfordert minimale Codeänderungen für Teams, die bereits 2Captcha-kompatible Wrapper verwenden.
3. BLS CAPTCHA-Unterstützung
Die Automatisierung von Regierungsportalen, Visa-Terminsysteme und das Scraping von Arbeitsdaten erfordern die Lösung von 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,
})
Anti-Captcha verfügt über keine BLS-Methode. Teams, die Zugang zum Regierungsportal benötigen, müssen wechseln.
4. reCAPTCHA v3-Score-Qualität
| Anbieter | Durchschnittlicher v3-Score | Punktekontrolle |
|---|---|---|
| Anti-Captcha | 0,3-0,5 | Begrenzt |
Niedrige v3-Werte lösen eine Bot-Erkennung aus. Der menschengestützte Ansatz von Anti-Captcha führt zu variablen Bewertungen. Die KI-Engine von CaptchaAI generiert konstant hohe Punktzahlen.
5. GeeTest-Genauigkeit
| GeeTest-Version | Anti-Captcha | CaptchaAI |
|---|---|---|
| GeeTest v3 | 85-90 % | 100 % |
| GeeTest v4 | 80-85 % | ~95 %* |
Hinweis: Richtwert basierend auf internen Stichproben. Werte können je nach GeeTest-Version, Region und Integration abweichen.
Funktionsvergleich
| Funktion | Anti-Captcha | CaptchaAI |
|---|---|---|
| reCAPTCHA v2 | ✅ | ✅ |
| reCAPTCHA v3 | ✅ (niedrige Werte) | ✅ Punktekontrolle |
| reCAPTCHA Enterprise | ✅ | ✅ |
| Unsichtbares reCAPTCHA | ✅ | ✅ |
| Drehkreuz | ✅ | ✅ 100 % |
| Cloudflare Challenge | ❌ | ✅ |
| GeeTest v3 | ✅ | ✅ 100 % |
| BLS | ❌ | ✅ 100 % |
| Bild/OCR | ✅ | ✅ Über 27.500 Typen |
| API-Format | Benutzerdefiniertes JSON | 2Captcha-kompatibel |
| Proxy-Unterstützung | ✅ | ✅ |
| Rückruf | ✅ | ✅ |
Geschwindigkeitsvergleich
| CAPTCHA-Typ | Anti-Captcha | CaptchaAI |
|---|---|---|
| reCAPTCHA v2 | 15-45s | 10-20s |
| reCAPTCHA v3 | 10-30s | 5-15s |
| Bild-CAPTCHA | 5-15s | 2-5s |
| Drehkreuz | 10-30s | 3-10s |
| GeeTest v3 | 15-40er Jahre | 5-15s |
Migrationspfad
Da die API-Formate unterschiedlich sind, erfordert die Migration eine Aktualisierung Ihrer request/response-Behandlung. Hier ist ein Wrapper, der beides während des Übergangs unterstützt:
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")
Verwenden Sie provider="captchaai" für neue Projekte. Migrieren Sie vorhandene Projekte, indem Sie den Konstruktorparameter ändern.
Fehlerbehebung
| Problem | Ursache | Lösung |
|---|---|---|
| Anderes API-Format | Anti-Captcha verwendet JSON-Aufgaben | Aktualisieren Sie das Anforderungsformat gemäß den obigen Beispielen |
Fehlendes Feld method |
Anti-Captcha verwendet type in der Aufgabe |
Wechseln Sie zu method=userrecaptcha für CaptchaAI |
| Das Abfrageformat ist falsch | Unterschiedlicher Ergebnisendpunkt | Verwenden Sie GET für /res.php mit action=get |
| Aufgabentyp nicht gefunden | Die Namen der Anti-Captcha-Aufgaben sind unterschiedlich | Verwenden Sie die Methodennamen CaptchaAI: userrecaptcha, turnstile, bls |
FAQ
Ist die Migration schwierig, da sich die API-Formate unterscheiden?
Das API-Format ist anders, aber unkompliziert. Die Kernlogik (→-Umfrage senden, →-Ergebnis erhalten) ist dieselbe. Bei den meisten Migrationen dauern Codeänderungen 15 bis 30 Minuten.
Kann ich Anti-Captcha-Wrapper-Bibliotheken mit CaptchaAI verwenden?
Nicht direkt – die API-Formate unterscheiden sich. CaptchaAI ist jedoch mit jeder 2Captcha-Wrapper-Bibliothek kompatibel, die weiter verbreitet ist.
Unterstützt CaptchaAI die Proxy-Weiterleitung von Anti-Captcha?
Ja. CaptchaAI unterstützt Proxy-Parameter (proxy, proxytype) im Standard-Anfrageformat.
Verwandte Leitfäden
Verbessern Sie Ihre CAPTCHA-Lösung – Probieren Sie CaptchaAI kostenlos ausmit besserer Cloudflare- und BLS-Unterstützung.