GeeTest Captcha V3

Hướng dẫn sử dụng API Giải Geetest Captcha V3 của 2captcha.net

Các kiểu Captcha GeeTest hỗ trợ

Hình minh họaKiểuGhi chú

slide

click

1. Tìm gt và challenge của Geetest Captcha V3

Mở developer's console của browser và tìm script element mà load GeeTest v3 script, trong đó sẽ có chứa tham số gt và challenge mà bạn cần nằm trong thuộc tính src của script.

Hoặc tìm JavaScript function initGeetest trong đó sẽ có chứa tham số gt và challenge mà bạn cần

2. Tạo yêu cầu/Request

POST : https://2captcha.net/in.php

Các tham số Body:

Tên trường dữ liệu

Kiểu dữ liệu

Bắt buộc

Mô tả

key

String

x

Key duy nhất để xác định đối tác API

method

String

x

Giá trị: geetest

gt

String

x

Khóa định danh GeeTest cho tên miền. Giá trị tĩnh, hiếm khi cập nhật.

challenge

String

x

Một khóa động. Mỗi lần API của chúng tôi được gọi, chúng tôi cần nhận được một giá trị khóa mới. Nếu hình ảnh xác thực được tải trên trang thì giá trị challenge không còn hợp lệ và bạn sẽ gặp lỗi ERROR_TOKEN_EXPIRED.

Bạn sẽ vẫn bị tính phí cho các tác vụ có lỗi ERROR_TOKEN_EXPIRED!

Cần phải xem xét các request và tìm ra chỗ mà trong đó giá trị này được trả về và lấy giá trị challenge nó.

pageurl

String

x

url của webpage hiển thị GeeTest Captcha mà bạn muốn giải Ví dụ: https://www.geetest.com/en/demo https://www.geetest.com/demo/

api_server

String

Subdomain của api Ví dụ: api-na.geetest.com

POST HTTP
Url: https://2captcha.net/in.php
Content-Type: application/json

{
	"apikey": "YOUR_API_KEY",
	"method": "geetest", // id cho GeeTest Captcha V3
	"gt": "022397c99c9f646f6477822485f30404", // thay bằng gt geetest của bạn
	"challenge": "52f990c29c603c9cbaa5beb773b627be", // thay bằng challenge của bạn
	"pageurl": "https://www.geetest.com/en/demo" // thay bằng url của bạn
}

Kết quả trả về/Response

dạng text: OK|[id]
Ví dụ: OK|24380238

dạng JSON
{
	"status": 1,
	"request": "24380427", //task id
}

3. Lấy kết quả giải captcha/Response

GET : https://2captcha.net/res.php

Các tham số Body:

Tên trường dữ liệu

Kiểu dữ liệu

Bắt buộc

Mô tả

key

String

x

Key duy nhất để xác định đối tác API

id

String

x

Task id trả về ở bước 1

json

Integer

0: server sẽ trả về dạng text (mặc định) 1: server sẽ trả về dạng JSON

GET HTTP
Url: https://2captcha.net/res.php?key=[apikey của bạn]&id=[task id]&json=1

Kết quả trả về/Response

{
	"status": 0,
	"request": "CAPCHA_NOT_READY"
}

4. Code mẫu

var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Post, "https://2captcha.net/in.php");
var content = new StringContent("{\r\n    \"key\": \"[api key]\",\r\n    \"method\": \"geetest\",\r\n    \"gt\": \"022397c99c9f646f6477822485f30404\",\r\n    \"challenge\": \"52f990c29c603c9cbaa5beb773b627be\",\r\n    \"pageurl\": \"https://www.geetest.com/en/demo\"\r\n}", null, "application/json");
request.Content = content;
var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());

5. Sử dụng kết quả token nhận được

Sử dụng các giá trị được trả về trên trang web mục tiêu của bạn giống như cách chúng được sử dụng khi bạn giải hình ảnh xác thực theo cách thủ công. Có thể có một biểu mẫu với một tập hợp các input ẩn hoặc callback JavaScript. Hoặc bạn có thể chỉ cần xây dựng một yêu cầu HTTP với dữ liệu cần thiết

Lưu ý: Nên sử dụng phần mềm PostMan để kiểm tra chạy test trước

Last updated