Image to Text - Captcha dạng ảnh
Hướng dẫn sử dụng API Giải Captcha Image to Text của anticaptcha.top
Captcha thông thường là một hình ảnh có chứa văn bản bị bóp méo nhưng con người có thể đọc được. Để giải quyết hình ảnh xác thực, người dùng phải nhập văn bản từ hình ảnh. trông giống như những hình ảnh dưới đây

1. Tạo yêu cầu/Request
POST : https://anticaptcha.top/api/captcha
Các tham số Body:
Tên trường dữ liệu
Kiểu dữ liệu
Bắt buộc
Mô tả
apikey
String
x
Key duy nhất để xác định đối tác API
img
String
x
Link ảnh hoặc ảnh dạng base64 Lưu ý: - vietinbank thì truyền giá trị là thẻ svg ví dụ: <svg xmnls="http://www.w3.org/2000/svg"width="192" height="24"><path xmlns="http://www.w3.org/2000/svg" fill="#111" d="M87.37 4.87L86.43 4.87L86.43 3.68L84......</svg> - hóa đơn điện tử thì truyền giá trị là file .svg hoặc base64 svg ví dụ: data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL.....
calc
Integer
1: Kiểu toán học Ví dụ: 2 + 7 = 9
numeric
Integer
1: Kiểu số Nếu captcha là dạng chỉ toàn số thì truyền thêm tham số numeric=1 để áp buộc giải ra dạng số, tránh một số captcha hay bị giải sai ở số 0 thành chữ O
casesensitive
Integer
1: Giải ra kết quả phân biệt chữ hoa chữ thường
Bảng tham số Type
Captcha MyViettel
1
320x80px
Captcha MyVina/MyVnpt
3
Captcha FACEBOOK
6
280x70px
Captcha GARENA
7
160x60px
Captcha Vietcombank Cá Nhân
9
112x36px hoặc 155x50px
Captcha AMAZONE
10
200x70px và 300x50px
Captcha MBBank Cá Nhân
18
160x50px
Captcha VietinBank Cá Nhân
19
truyền giá trị là thẻ html svg
Captcha MAJESTIC
20
150x40px
Captcha Hóa Đơn Điện Tử
28
200x40px
Captcha Tra Cứu Thông Tin Người Nộp Thuế
29
117x45px hoặc 130x50px
Captcha Tra Cứu Thông Tin Hóa Đơn
30
120x25px
Captcha BIDV Đăng Ký Trực Tuyến
31
110x44px
Captcha AgriBank Mua Vàng JSC
32
490x60px
Captcha Vietcombank DigiBiz Doanh Nghiệp SME
33
145x50px
Các captcha dạng Image to text không thuộc các loại trên thì dùng loại này
14
Nhiều kích thước

Captcha Discord App Lưu ý: chỉ hỗ trợ dạng số, chưa hỗ trợ dạng chữ
34
300x100px

Captcha MSB Cá Nhân
38
68x22px

Captcha BIDV Cá Nhân
40
145x50px

Captcha MyViettel mới
48
320x80px

Captcha MBBank Doanh Nghiệp
49
200x35
POST HTTP
Url: https://anticaptcha.top/api/captcha
Content-Type: application/json
{
"apikey": "YOUR_API_KEY",
"img": "image base64 encoded hoặc url ảnh",
"type": 9 // id loại captcha muốn giải theo bảng trên
}
2. Kết quả trả về/Response
Kết quả trả về dạng JSON gồm các trường sau
Tên trường dữ liệu
Kiểu dữ liệu
Mô tả
success
boolean
Mã thông báo xác định kết quả của bước gửi captcha qua POST
true: Thành công false: Thất bại
message
String
Thông báo tương ứng nếu có
captcha
String
mã captcha đã giải
base64img
String
{
"success": true,
"message": "Thành công",
"captcha": "764NHK", //kết quả giải ra
"base64img": "/9j/4AAQSkZJRgABAgAAAQABAAsLDBkSEw8UHRofHh0aHBwgJC4nICI..."
}
3. 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(string img, int type)
{
var data = new
{
apikey = apiKey,
type = type,
img = img
};
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;
}
}
Lưu ý: Nên sử dụng phần mềm PostMan để kiểm tra chạy test trước
Last updated