NeuroCaptcha

Type de tâche

GeeTest v4

GeeTestTaskV4votre proxy

Envoyez les paramètres de la page et recevez un token prêt à l’emploi, au même format de réponse que tous les autres types.

Avec votre proxy : la tâche est résolue via le proxy que vous transmettez, le token correspond donc à votre IP. Les identifiants du proxy sont supprimés après la résolution.

Prix

0,90 $USpour 1 000 tâches

0,0009 $US par tâche

Obtenir une clé API

Métriques en direct, 24 h

Les métriques en direct de ce type apparaîtront sur la page de statut après le lancement.

Paramètres de la tâche

ParamètreTypeobligatoireParamètres de la tâche
typestringobligatoireGeeTestTaskV4
websiteURLstringobligatoireURL complète de la page contenant le captcha.
captchaIdstringobligatoireIdentifiant du captcha : captcha_id GeeTest v4 ou l'id Lemin CROPPED_….
userAgentstringfacultatifUser-Agent utilisé pour la résolution ; utilisez le même lors de l’envoi du token.
cookiesstringfacultatifCookies du site cible au format key1=value1; key2=value2.
proxyTypestringobligatoirehttp, socks4 ou socks5.
proxyAddressstringobligatoireAdresse IP ou hôte du proxy (adresses publiques uniquement).
proxyPortintegerobligatoirePort du proxy.
proxyLoginstringfacultatifIdentifiant du proxy, s’il exige une authentification.
proxyPasswordstringfacultatifMot de passe du proxy. Supprimé une fois la tâche résolue.

Exemple

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": "GeeTestTaskV4",
        "websiteURL": "https://example.com/login",
        "captchaId": "e392e1d7fd421dc63325744d5a2b9c73",
        "proxyType": "http",
        "proxyAddress": "203.0.113.10",
        "proxyPort": 8080,
        "proxyLogin": "user",
        "proxyPassword": "pass",
    },
}).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"])
        break

Autres types de tâches