GeeTest Captcha V3

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

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

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://anticaptcha.top/api/captcha

Các tham số Body:

POST HTTP
Url: https://anticaptcha.top/api/captcha
Content-Type: application/json

{
	"apikey": "YOUR_API_KEY",
	"type": 21, // captcha id của Geetest 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
}

3. Nhận kết quả trả về/Response

Kết quả trả về dạng JSON gồm các trường sau

{
	"success": true,
	"message": "Thành công",
	"captcha": ""captcha": "{\"challenge\":\"52f990c29c603c9cbaa5beb773b627be\",\"validate\":\"6275e26419211d1f526e674d97110e15\",\"seccode\":\"510cd9735583edcb158601067195a5eb|jordan\"}", //kết quả giải ra
	"base64img": null
}

4. Code mẫu

public class CatpchaResult
{
    public string log { get; set; }
    public bool status { get; set; }
    public string catcha { get; set; }
}
public class AnticaptchaTopApi
{
    public string apiKey = "";
    public string Post(string url, object data, string method = "POST")
    {
        int num = 0;
        NameValueCollection values;
        while (num < 1)
        {
            try
            {
                using (WebClient webClient = new WebClient())
                {
                    values = new NameValueCollection();
                    if (data != null)
                    {
                        data.GetType().GetProperties().ToList().ForEach(delegate (PropertyInfo pi)
                        {
                            values.Add(pi.Name, (pi.GetValue(data, null) ?? "").ToString());
                        });
                        byte[] bytes = webClient.UploadValues(url, method, values);
                        return Encoding.UTF8.GetString(bytes);
                    }
                    return webClient.DownloadString(url);
                }
             }
            catch
            {                
            }
        }
        return "";
    }
    public CatpchaResult GetCatpcha(int type=21,string gt,string challenge,string pageurl)
    {
        var data = new
        {
            apikey = apiKey,
            type = type,
            gt = gt,
            challenge = challenge,
            pageurl = pageurl
        };
        var rs = new CatpchaResult
        {
            status = false
        };
        try
        {
            var result = JsonConvert.DeserializeObject<dynamic>(Post("https://anticaptcha.top/api/captcha", data));
            if (result.success == true)
            {
                rs.status = true;
                rs.catcha = result.captcha;
                rs.log = result.message;
            }
        }
        catch
        {
        }
        return rs;
    }
}

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