Skip to content
On this page
Home
>Aufgabe (Token)
>Geetest

GeeTestTask: Lösung für GeeTest

TIP

Erstellen Sie die Aufgabe mit der Methode createTask und erhalten Sie das Ergebnis mit der Methode getTaskResult.

Die von uns unterstützten Aufgabentypen types sind:

  • GeeTestTask Diese Aufgabentyp erfordert Ihre eigenen Proxys.
  • GeeTestTaskProxyLess Verwendet den integrierten Proxy des Servers.

UNTERSTÜTZTE IMG-TYPEN

TypHinweisZustand
img.pngslidestabil
img_2.pngclickstabil

Aufgabe erstellen

Erstellen Sie eine Aufgabe mit der Methode createTask.

Struktur des Aufgabenobjekts

EigenschaftenTypErforderlichBeschreibung
typeStringRequiredGeeTestTask
GeeTestTaskProxyLess
websiteURLStringRequiredWebadresse der Website, die Geetest verwendet. Normalerweise handelt es sich um einen festen Wert. (z. B. https://geetest.com)
gtStringRequiredDas Feld gt der Domain.
challengeStringRequiredWenn Sie Geetest V3 lösen müssen, müssen Sie diesen Parameter verwenden. Er ist nicht erforderlich, wenn Sie Geetest V4 lösen möchten.
captchaIdStringOptionalWenn Sie Geetest V4 lösen müssen, müssen Sie diesen Parameter verwenden. Er ist nicht erforderlich, wenn Sie Geetest V3 lösen möchten.
geetestApiServerSubdomainStringOptionalSpezielle API-Subdomain
proxyStringOptionalErfahren Sie mehr unter Verwendung von Proxys

Beispielanfrage

Beispielanfrage unter Verwendung von Geetest V3

txt
POST https://api.capsolver.com/createTask
Host: api.capsolver.com
Content-Type: application/json
json
{
    "clientKey": "YOUR_API_KEY",
    "task": {
        "type":"GeeTestTaskProxyless", // Kann GeetestTaskProxyless oder GeetestTask verwendet werden
        "websiteURL":"http://meinewebsite.com/geetest/test.php",  // Erforderlich
        "gt":"874703612e5cd0d", // Erforderlich
        "challenge":"", // Erforderlich
        "geetestApiServerSubdomain":"",  // Optional
        "proxy": "http:ip:port:user:pass", // socks5:ip:port:user:pass
        "userAgent": "" // Optional
    }
}

Beispielanfrage unter Verwendung von Geetest V4

txt
POST https://api.capsolver.com/createTask
Host: api.capsolver.com
Content-Type: application/json
json
{
    "clientKey": "YOUR_API_KEY",
    "task": {
        "type":"GeeTestTask", // Kann GeetestTask oder GeetestTaskProxyless verwendet werden
        "websiteURL":"http://meinewebsite.com/geetest/test.php",  // Erforderlich
        "captchaId": "", // Erforderlich
        "geetestApiServerSubdomain":"", // Optional
        "proxy":"" // Optional, erforderlich, wenn Sie GeetestTask verwenden
    }
}

Beispielantwort

json
{
    "errorId": 0,
    "status": "idle",
    "taskId": "61138bb6-19fb-11ec-a9c8-0242ac110006" // Aufgaben-ID merken
}

Ergebnis abrufen

Verwenden Sie die Methode getTaskResult, um das Ergebnis abzurufen. Je nach Auslastung des Systems erhalten Sie das Ergebnis im Intervall von 3s bis 10s.

Beispielanfrage

json
POST https://api.capsolver.com/getTaskResult
Host: api.capsolver.com
Content-Type: application/json

{
    "clientKey":"YOUR_API_KEY",
    "taskId": "61138bb6-19fb-11ec-a9c8-0242ac110006"
}

Beispielantwort

Beispielantwort unter Verwendung von GeetestV3

json
{
  "errorId": 0,
  "solution": {
    "challenge": "",
    "validate": ""
  },
  "status": "ready"
}

Beispielantwort unter Verwendung von GeetestV4

json
{
  "errorId": 0,
  "taskId": "e0ecaaa8-06f6-41fd-a02e-a0c79b957b15",
  "status": "ready",
  "solution": {
    "captcha_id": "",
    "captcha_output": "sW8mpqWPdtBwV4_GvgZZoTSnsoDl7xDvLHkfxhZv1QbU0HOeOXs

QaBvR-S6WwY7aZ1XlgBDAXFmrtegNX2harzcq8_pVcCf1adwMgDtdJ6rBjmZs1cIgNL8okOD7Eh506ObA5u8ciBG3UehnuXMyDHAeJuiCygqMwFn2C8R3U5Hrgs0wiFlOvIcCjm-dBObNYuvK5m8thZvtU1xbVE8VENTwPIZaNIUGSG7ecPgKgi8=",
    "gen_time": "1671687196",
    "lot_number": "e5656ce24adf4ae58a5bf3f7bc847794",
    "pass_token": "09dd5cbebdd738d78b3287346003c8d5cec255b97b074ed64d9009345d3eac4a",
    "risk_type": "slide"
  }
}

Verwendung von SDK-Anfragen

python
# pip install --upgrade capsolver
# export CAPSOLVER_API_KEY='...'

import capsolver

# capsolver.api_key = "..."
# V3
solution = capsolver.solve({
    "type": "GeeTestTaskProxyLess",
    "websiteURL": "http://meinewebsite.com/geetest/test.php",
    "gt": "874703612e5cd0d",
    "challenge": "",
    "geetestApiServerSubdomain": "",
})

# V4
solution = capsolver.solve({
    "type": "GeeTestTaskProxyLess",
    "websiteURL": "http://meinewebsite.com/geetest/test.php",
    "captchaId": "",
    "geetestApiServerSubdomain": "",
})
go
package main

import (
	"fmt"
	capsolver_go "github.com/capsolver/capsolver-go"
	"log"
)

func main() {
	// Installieren Sie zuerst das SDK
	// go get github.com/capsolver/capsolver-go
	// export CAPSOLVER_API_KEY='...' oder
	//capSolver := CapSolver{ApiKey:"..."}

	capSolver := capsolver_go.CapSolver{}
	// V3
	solution, err := capSolver.Solve(map[string]any{
		"type":                      "GeeTestTask", //GeeTestTask,GeeTestTaskProxyLess
		"websiteURL":                "http://meinewebsite.com/geetest/test.php",
		"gt":                        "874703612e5cd0d",
		"challenge":                 "",
		"geetestApiServerSubdomain": "",
		"proxy":                     "",
	})
	if err != nil {
		log.Fatal(err)
		return
	}
	fmt.Println(solution)
	//V4
	solution, err = capSolver.Solve(
		map[string]any{
			"type":                      "GeeTestTask",
			"websiteURL":                "http://meinewebsite.com/geetest/test.php",
			"websiteKey":                "",
			"cptchaId":                  "12310989asdf",
			"geetestApiServerSubdomain": "",
		})
	if err != nil {
		log.Fatal(err)
	}
}

Zu beachtende Punkte

  1. Kopieren Sie die Daten nicht direkt aus den Entwicklertools des Browsers. Holen Sie sich GT und Challenge aus der Anfrage.

  2. Bei einer geringen Anzahl von Fehlern bei der erneuten Abfrage der Parameter für den Sicherheitscode kann ein erneuter Versuch unternommen werden.

  3. Die Parameter für den Sicherheitscode können nur einmal zur Identifizierung übermittelt werden. Wiederholen Sie nicht die Identifizierung mit denselben Parametern. Initialisieren Sie die Erfassung erneut.

  4. Hinweis: Wenn Sie den Sicherheitscode nicht bestehen können, kann dies an Codierungsproblemen auf der Website liegen. In diesem Fall ersetzen Sie das CAPTCHA-Zeichen "=" durch %3D. Andernfalls ist keine Codierung erforderlich. Beachten Sie dies bitte.

  5. Informationen zu Testservern finden Sie im Geetest-Dokument.