Skip to content
On this page
Home
>Tâche (Jeton)
>Geetest

GeeTestTask : résolution de GeeTest

TIP

Créez la tâche avec la méthode createTask et obtenez les résultats avec la méthode getTaskResult.

Les types de tâches que nous prenons en charge :

  • GeeTestTask ce type de tâche nécessite vos propres proxies.
  • GeeTestTaskProxyLess utilise le proxy intégré du serveur.

SUPPORT IMG TYPES

TypeNoteÉtat
img.pngglisserstable
img_2.pngcliquerstable

Création de la tâche

Créez une tâche avec la méthode createTask pour créer une tâche.

Structure de l'objet de la tâche

PropriétésTypeRequisDescription
typeStringRequiredGeeTestTask
GeeTestTaskProxyLess
websiteURLStringRequiredAdresse Web du site utilisant Geetest, généralement c'est une valeur fixe. (Ex : https://geetest.com)
gtStringRequiredLe champ de domaine gt.
challengeStringRequiredSi vous devez résoudre Geetest V3, vous devez utiliser ce paramètre, inutile si vous devez résoudre GeetestV4
captchaIdStringOptionalSi vous devez résoudre Geetest V4, vous devez utiliser ce paramètre, inutile si vous devez résoudre GeetestV3
geetestApiServerSubdomainStringOptionalSous-domaine API spécial
proxyStringOptionalApprenez comment utiliser les proxies

Exemple de demande

Exemple de demande en utilisant 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", //Peut utiliser GeeTestTaskProxyless ou GeeTestTask
        "websiteURL":"http://monsiteweb.com/geetest/test.php",  //Requis
        "gt":"874703612e5cd0d", //Requis
        "challenge":"", //Requis
        "geetestApiServerSubdomain":"",  //Optionnel
         "proxy": "http:ip:port:user:pass" // socks5:ip:port:user:pass
        "userAgent": "" //Optionnel
    }
}

Exemple de demande en utilisant 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", //Peut utiliser GeeTestTaskProxyless ou GeeTestTask
        "websiteURL":"http://monsiteweb.com/geetest/test.php",  //Requis
        "captchaId": "", //Requis
        "geetestApiServerSubdomain":"",//Optionnel
        "proxy":"" //Optionnel, c'est nécessaire si vous utilisez GeetestTaskask
    }
}

Exemple de réponse

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

Obtenir le résultat

Utilisez getTaskResult pour obtenir le résultat. Selon la charge du système, vous obtiendrez le résultat dans un intervalle de 3s à 10s.

Exemple de demande

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"
}

Exemple de réponse

Exemple de réponse en utilisant GeetestV3

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

Exemple de réponse en utilisant GeetestV4

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

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

Utilisation de la demande SDK

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

import capsolver

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

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

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

func main() {
	// first you need to install sdk
	//go get github.com/capsolver/capsolver-go
	//export CAPSOLVER_API_KEY='...' or
	//capSolver := CapSolver{ApiKey:"..."}

	capSolver := capsolver_go.CapSolver{}
	// v3
	solution, err := capSolver.Solve(map[string]any{
		"type":                      "GeeTestTask", //GeeTestTask,GeeTestTaskProxyLess
		"websiteURL":                "http://monsiteweb.com/geetest/test.php",
		"gt":                        "",
		"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://monsiteweb.com/geetest/test.php",
			"websiteKey":                "",
			"cptchaId":                  "",
			"geetestApiServerSubdomain": "",
		})
	if err != nil {
		log.Fatal(err)
	}
}

Points à noter

  1. Veuillez ne pas copier directement depuis l'outil de développement du navigateur, OBTENEZ GT et challenge sur la requête.

  2. Un petit nombre d'erreurs pour réobtenir les paramètres du code de vérification peut être réessayé.

  3. Les paramètres du code de vérification ne peuvent être soumis qu'une seule fois pour l'identification, ne soumettez pas les mêmes paramètres pour l'identification, vous devez réinitialiser l'acquisition.

  4. Remarque : Si vous ne pouvez pas passer le site, cela peut être dû à des problèmes de codage, alors le symbole CAPTCHA = avec le remplacement % 3D, autre sans codage, veuillez noter cela.

  5. Les paramètres tels que le serveur de test peuvent être consultés ici dans le Geetest document.