Skip to content
On this page
Home
>Nhiệm vụ(Token)
>Geetest

Giải quyết GeeTestTask: giải quyết GeeTest

TIP

Tạo nhiệm vụ bằng cách sử dụng phương pháp createTask và nhận kết quả bằng cách sử dụng phương pháp getTaskResult.

Loại nhiệm vụ types mà chúng tôi hỗ trợ:

  • GeeTestTask loại nhiệm vụ này yêu cầu bạn sử dụng proxy riêng của bạn.
  • GeeTestTaskProxyLess sử dụng proxy tích hợp sẵn trong máy chủ

HỖ TRỢ CÁC LOẠI ẢNH

LoạiChú ýTrạng thái
img.pngtrượtstable
img_2.pngnhấpstable

Tạo Nhiệm Vụ

Tạo một nhiệm vụ với phương pháp createTask để tạo một nhiệm vụ.

Cấu Trúc Đối Tượng Nhiệm Vụ

Thuộc tínhKiểuBắt BuộcMô tả
typeStringRequiredGeeTestTask
GeeTestTaskProxyLess
websiteURLStringRequiredĐịa chỉ web của trang web sử dụng geetest, thường là giá trị cố định. (Ví dụ: https://geetest.com)
gtStringRequiredTrường miền gt.
challengeStringRequiredNếu bạn cần giải quyết Geetest V3, bạn phải sử dụng tham số này, không cần nếu bạn cần giải quyết GeetestV4
captchaIdStringOptionalNếu bạn cần giải quyết Geetest V4, bạn phải sử dụng tham số này, không cần nếu bạn cần giải quyết Geetest V3
geetestApiServerSubdomainStringOptionalnTiền tố api đặc biệt
proxyStringOptionalTìm hiểu cách sử dụng proxy

Ví dụ Yêu Cầu

Ví dụ yêu cầu sử dụng 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", //Có thể sử dụng GeeTestTaskProxyless hoặc GeeTestTask
        "websiteURL":"http://mywebsite.com/geetest/test.php",  //Bắt Buộc
        "gt":"874703612e5cd0d", //Bắt Buộc
        "challenge":"", //Bắt Buộc
        "geetestApiServerSubdomain":"",  //Tùy Chọn
         "proxy": "http:ip:port:user:pass" // socks5:ip:port:user:pass
        "userAgent": "" //Tùy Chọn
    }
}

Ví dụ Yêu Cầu Sử Dụng 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", //Có thể sử dụng GeeTestTaskProxyless hoặc GeeTestTask
        "websiteURL":"http://mywebsite.com/geetest/test.php",  //Bắt Buộc
        "captchaId": "", //Bắt Buộc
        "geetestApiServerSubdomain":"",//Tùy Chọn
        "proxy":"" //Tùy Chọn, điều này là bắt buộc nếu bạn sử dụng GeeTestTask
    }
}

Ví dụ Phản Hồi

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

Nhận Kết Quả

Sử dụng phương pháp getTaskResult để nhận kết quả, tùy thuộc vào tải hệ thống, bạn sẽ nhận kết quả trong khoảng thời gian từ 3 giây đến 10 giây

Ví dụ Yêu Cầu

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

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

Ví dụ Phản Hồi

Ví dụ phản hồi sử dụng GeetestV3

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

Ví dụ Phản Hồi Sử Dụng GeetestV4

json
{
  "errorId": 0,
  "taskId": "e0ecaaa8-06f6-41fd-a02e-a0c79b957b15",
  "status": "ready",
  "solution": {
    "captcha_id": "",
    "captcha_output": "",
    "gen_time": "",
    "lot_number": "",
    "pass_token": "",
    "risk_type": "slide"
  }
}

Sử Dụng Yêu Cầu SDK

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

import capsolver

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

# v4
solution = capsolver.solve({
    "type": "GeeTestTaskProxyLess",
    "websiteURL": "http://mywebsite.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://mywebsite.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://mywebsite.com/geetest/test.php",
			"websiteKey":                "",
			"cptchaId":                  "12310989asdf",
			"geetestApiServerSubdomain": "",
		})
	if err != nil {
		log.Fatal(err)
	}
}

Lưu ý

  1. Xin đừng sao chép trực tiếp từ công cụ phát triển trình duyệt, nhận GT và thách thức trong yêu cầu.

  2. Một số lỗi nhỏ để tái nhận các tham số xác minh có

thể được thử lại.

  1. Tham số xác minh chỉ có thể được gửi một lần để xác định, đừng lặp lại việc gửi các tham số giống nhau để xác định, cần phải khởi tạo lại việc thu thập.

  2. Lưu ý: Nếu bạn không thể vượt qua trang web có thể có vấn đề về mã hóa, sau đó ký hiệu CAPTCHA = bằng cách thay thế % 3D, khác thì không cần mã hóa, hãy lưu ý điều này.

  3. Các tham số như máy chủ kiểm tra có thể được truy vấn tại đây trong tài liệu Geetest.