CapMonster uyumlu
İki endpoint. Bir anahtar.
API adresini ve clientKey’i değiştir; mevcut createTask / getTaskResult kodun çalışmaya devam etsin.
1. API adresi ve key
API = "https://rootcaptcha.duckdns.org"
KEY = "rc-..." # /signup veya admin ile alınır
2. Python
import requests, time
API = "https://rootcaptcha.duckdns.org"
KEY = "rc-YOUR_KEY"
r = requests.post(API + "/createTask", json={
"clientKey": KEY,
"task": {
"type": "TurnstileTaskProxyless",
"websiteURL": "https://example.com",
"websiteKey": "SITE_KEY",
},
}).json()
task_id = r["taskId"]
for _ in range(40):
time.sleep(2)
res = requests.post(API + "/getTaskResult", json={
"clientKey": KEY, "taskId": task_id,
}).json()
if res.get("status") == "ready":
print(res["solution"])
break
3. Node / .env
CapMonster URL’si bekleyen istemcilerde base URL ve key’i değiştir.
CAPTCHA_BASE_URL=https://rootcaptcha.duckdns.org
CAPTCHA_API_KEY=rc-YOUR_KEY
ZLOT_CAPTCHA_BASE_URL=https://rootcaptcha.duckdns.org
ZLOT_CAPTCHA_API_KEY=rc-YOUR_KEY
4. cf_clearance
{
"clientKey": "rc-...",
"task": {
"type": "TurnstileTask",
"websiteURL": "https://target.com/",
"websiteKey": "0x4AAAA...",
"cloudflareTaskType": "cf_clearance",
"htmlPageBase64": "<403 sayfa base64>",
"userAgent": "Mozilla/5.0 ...",
"proxyType": "http",
"proxyAddress": "host",
"proxyPort": 1000,
"proxyLogin": "user",
"proxyPassword": "pass"
}
}
Proxy, cookie ve userAgent aynı oturum zincirinde tutulmalıdır.
5. FunCaptcha enterprise blob
{
"type": "FunCaptchaTaskProxyless",
"websiteURL": "https://signup.live.com/signup",
"websitePublicKey": "B7D8911C-...",
"data": { "blob": "SESSION_BLOB" }
}
Outlook / Hotmail gibi enterprise host’larda
data.blob zorunludur.6. Hata modeli
errorId: 0 başarılı kabulü, status: processing beklemeyi, status: ready sonucu ifade eder. Başarısız çözümde kredi düşmez.