NeuroCaptcha

Typ zadania

reCAPTCHA v2

RecaptchaV2TaskProxylessbez proxy

reCAPTCHA v2 to pole wyboru „Nie jestem robotem” i jego niewidoczny wariant. API zwraca token gRecaptchaResponse, który wysyła się razem z formularzem strony.

Bez proxy: rozwiązujemy z własnej infrastruktury. Najlepsze, gdy docelowa witryna nie wiąże tokenu z adresem IP.

Cena

0,60 USDza 1000 zadań

0,0006 USD za zadanie

Uzyskaj klucz API

Metryki na żywo, 24 h

Metryki na żywo dla tego typu pojawią się na stronie statusu po starcie.

Parametry zadania

ParametrTypwymaganyParametry zadania
typestringwymaganyRecaptchaV2TaskProxyless
websiteURLstringwymaganyPełny URL strony z captcha.
websiteKeystringwymaganyKlucz witryny (data-sitekey lub parametr k żądania anchor).
isInvisiblebooleanopcjonalnytrue dla niewidocznej reCAPTCHA v2 (bez pola wyboru).
recaptchaDataSValuestringopcjonalnyWartość data-s, jeśli strona jej używa (niektóre usługi Google).
userAgentstringopcjonalnyUser-Agent używany do rozwiązania; przy wysyłaniu tokenu należy użyć tego samego.
cookiesstringopcjonalnyPliki cookie docelowej witryny w formacie key1=value1; key2=value2.

Przykład

import time
import requests

API = "https://"
KEY = "YOUR_API_KEY"

# 1. create a task: the price is held, not charged
task = requests.post(f"{API}/createTask", json={
    "clientKey": KEY,
    "task": {
        "type": "RecaptchaV2TaskProxyless",
        "websiteURL": "https://example.com/login",
        "websiteKey": "6Le-SITE-KEY",
    },
}).json()
if task["errorId"]:
    raise RuntimeError(task["errorCode"])

# 2. poll the result (or pass "callbackUrl" and get a signed webhook)
while True:
    time.sleep(3)
    res = requests.post(f"{API}/getTaskResult",
                        json={"clientKey": KEY, "taskId": task["taskId"]}).json()
    if res["errorId"]:
        raise RuntimeError(res["errorCode"])
    if res["status"] == "ready":
        print(res["solution"]["gRecaptchaResponse"])
        break

Inne typy zadań