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ại | Chú ý | Trạng thái |
---|---|---|
trượt | stable | |
nhấp | stable |
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ính | Kiểu | Bắt Buộc | Mô tả |
---|---|---|---|
type | String | Required | GeeTestTask GeeTestTaskProxyLess |
websiteURL | String | Required | Địa chỉ web của trang web sử dụng geetest, thường là giá trị cố định. (Ví dụ: https://geetest.com) |
gt | String | Required | Trường miền gt. |
challenge | String | Required | Nế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 |
captchaId | String | Optional | Nế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 |
geetestApiServerSubdomain | String | Optionaln | Tiền tố api đặc biệt |
proxy | String | Optional | Tì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
POST https://api.capsolver.com/createTask
Host: api.capsolver.com
Content-Type: application/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
POST https://api.capsolver.com/createTask
Host: api.capsolver.com
Content-Type: application/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
{
"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
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
{
"errorId": 0,
"solution": {
"challenge": "",
"validate": ""
},
"status": "ready"
}
Ví dụ Phản Hồi Sử Dụng GeetestV4
{
"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
# 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": "",
})
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 ý
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.
Một số lỗi nhỏ để tái nhận các tham số xác minh có
thể được thử lại.
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.
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.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.