UNLOCK API
NetEase Yidun

NetEase Yidun

So senden Sie eine NetEase Yidun-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
Seiten-URL und die Yidun-Captcha-ID
Sie erhalten
Token (validate) für das Formular

Überblick und Preis

Namen der Aufgabentypen

Verwenden Sie den ersten Namen, um ohne Proxy zu lösen. Verwenden Sie den zweiten Namen und fügen Sie die Proxy-Felder hinzu, um über Ihren eigenen Proxy zu lösen. Der Preis ist gleich.
YidunTaskProxylessOhne Proxy
YidunTaskÜber Ihren Proxy

Aufgabenobjekt

type
StringPflicht
Name des Aufgabentyps. Groß- und Kleinschreibung spielt keine Rolle. YidunTaskProxyless | YidunTask
websiteURL
StringPflicht
Vollständige Adresse der Seite, auf der das CAPTCHA erscheint, beginnend mit http:// oder https://.
websiteKey
StringPflicht
Der Site Key des CAPTCHA-Widgets, zu finden im Seitenquelltext (zum Beispiel data-sitekey).
yidunGetLib
StringOptional
Adresse des Yidun-Skripts, falls die Seite ein eigenes verwendet.
yidunApiServerSubdomain
StringOptional
Yidun-API-Server, falls die Seite einen eigenen verwendet.
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.

Proxy-Felder

Nur für den Typnamen mit Proxy. Senden Sie entweder die einzelnen Felder oder einen proxy-String.
proxyType
StringPflicht
http, https, socks4 oder socks5.
proxyAddress
StringPflicht
IP-Adresse oder Hostname des Proxys.
proxyPort
IntegerPflicht
Port des Proxys.
proxyLogin
StringOptional
Benutzername des Proxys, falls nötig.
proxyPassword
StringOptional
Passwort des Proxys, falls nötig.
proxy
String
Alle Proxy-Felder in einem String, zum Beispiel http://user:pass@1.2.3.4:8080.

Proxy verwenden

Anfrage

POST /createTask
{
  "clientKey": "YOUR_API_KEY",
  "task": {
    "type": "YidunTaskProxyless",
    "websiteURL": "https://example.com/login",
    "websiteKey": "5EZVvsHMrKCFKp5NYNoTyDjTjetoVo1Z4UNNbTwJf1GfN6Xm"
  }
}

solution-Objekt

Wird in solution zurückgegeben, wenn status ready ist.
token
String
Das Token, das mit dem Formular der Seite übermittelt wird.
POST /getTaskResult
{
  "errorId": 0,
  "taskId": 1001,
  "status": "ready",
  "solution": {
    "token": "CN31_9AwsPmaYcJameP_09rA0..."
  },
  "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": "YidunTaskProxyless",
      "websiteURL": "https://example.com/login",
      "websiteKey": "5EZVvsHMrKCFKp5NYNoTyDjTjetoVo1Z4UNNbTwJf1GfN6Xm"
    }
}).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"]["token"])
        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=yidun&sitekey=SITE_KEY&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