UNLOCK API
Eigene Aufgabe (Imperva, Temu und weitere)

Eigene Aufgabe (Imperva, Temu und weitere)

So senden Sie eine Eigene Aufgabe (Imperva, Temu und weitere)-Aufgabe mit createTask oder in.php an UNLOCK API: Namen der Aufgabentypen, alle Parameter, das solution-Objekt, Proxy-Felder und Codebeispiele in 7 Sprachen.
Preis
$0.90 $0.0009 pro Aufgabe
Sie senden
class (Imperva, Temu, HUNT, tspd, Basilisk und weitere) und deren metadata
Sie erhalten
Die Werte, die diese class liefert

Überblick und Preis

Namen der Aufgabentypen

Dieser Typ hat nur einen Namen.
CustomTask

Aufgabenobjekt

type
StringPflicht
Name des Aufgabentyps. Groß- und Kleinschreibung spielt keine Rolle. CustomTask
class
StringPflicht
Welcher Schutz gelöst werden soll, zum Beispiel Imperva oder Temu.
websiteURL
StringOptional
Vollständige Adresse der Seite, auf der das CAPTCHA erscheint, beginnend mit http:// oder https://.
metadata
ObjectOptional
Zusätzliche Werte, die die gewählte class benötigt, als Objekt.
userAgent
StringOptional
Browser-User-Agent, der beim Lösen verwendet wird. Senden Sie denselben, wenn Sie die Antwort übermitteln.

Hier nicht aufgeführte Felder werden unverändert an den Solver weitergegeben.

Anfrage

POST /createTask
{
  "clientKey": "YOUR_API_KEY",
  "task": {
    "type": "CustomTask",
    "class": "Imperva",
    "websiteURL": "https://example.com/login",
    "metadata": {
      "incapsulaScriptUrl": "_Incapsula_Resource?SWJIYLWA=...",
      "incapsulaCookie": "incap_ses_..."
    }
  }
}

solution-Objekt

Wird in solution zurückgegeben, wenn status ready ist.
data
Object
Antwortwerte für die gewählte class.
POST /getTaskResult
{
  "errorId": 0,
  "taskId": 1001,
  "status": "ready",
  "solution": {
    "data": {
      "...": "..."
    }
  },
  "cost": "0.0009",
  "createTime": 1791640000,
  "endTime": 1791640014,
  "solveCount": 1
}

Codebeispiele

import time, requests

API = "https://unlock-api.com"
KEY = "YOUR_API_KEY"

task = requests.post(f"{API}/createTask", json={
    "clientKey": KEY,
    "task": {
      "type": "CustomTask",
      "class": "Imperva",
      "websiteURL": "https://example.com/login",
      "metadata": {
        "incapsulaScriptUrl": "_Incapsula_Resource?SWJIYLWA=...",
        "incapsulaCookie": "incap_ses_..."
      }
    }
}).json()
if task["errorId"]:
    raise SystemExit(task["errorCode"])

for _ in range(60):   # 60 x 5 s = the 5 minute task limit
    time.sleep(5)
    r = requests.post(f"{API}/getTaskResult", json={"clientKey": KEY, "taskId": task["taskId"]}).json()
    if r["errorId"]:
        raise SystemExit(f"{r['errorCode']}: {r.get('errorDescription', '')}")   # failed tasks are refunded
    if r["status"] == "ready":
        print(r["solution"])
        break
else:
    raise SystemExit("timed out")

in.php-Formularmethode

Dieselbe Aufgabe mit der klassischen Formularanfrage. res.php gibt die Antwort als Text zurück.
in.php, res.php
curl -s "https://unlock-api.com/in.php" -d "key=YOUR_API_KEY&method=incapsula&pageurl=https://example.com/login&json=1"
# {"status":1,"request":"1001"}

curl -s "https://unlock-api.com/res.php?key=YOUR_API_KEY&action=get&id=1001&json=1"
# {"status":0,"request":"CAPCHA_NOT_READY"}  then  {"status":1,"request":"ANSWER"}

Formular-API: in.php und res.php