AwsWafCaptcha: Giải quyết AWS WAF
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.
Chúng tôi hỗ trợ các loại nhiệm vụ sau:
AntiAwsWafTask
- Loại nhiệm vụ này yêu cầu bạn sử dụng proxy của riêng bạn.AntiAwsWafTaskProxyLess
- Loại nhiệm vụ này không yêu cầu bạn sử dụng proxy của riêng bạn.
Tạo Nhiệm Vụ
Tạo nhiệm vụ nhận diện bằng cách sử dụng phương pháp createTask.
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 | AntiAwsWafTask AntiAwsWafTaskProxyLess |
proxy | String | Required | Tìm hiểu cách sử dụng proxy |
websiteURL | String | Required | Quay lại URL trang của captcha cho thông tin liên quan |
awsKey | String | Optional | Giá trị key được trả về bởi trang captcha |
awsIv | String | Optional | Giá trị iv được trả về bởi trang captcha |
awsContext | String | Optional | Giá trị context được trả về bởi trang captcha |
awsChallengeJS | String | Optional | Liên kết challenge.js được trả về bởi trang captcha |
awsProblemUrl | String | Optional | problem giao diện url chứa các từ khóa như problem , num_solutions_required |
Nếu cookie trả về không khả dụng, có thể cần xác minh IP, vui lòng thử AntiAwsWafTask
và gửi proxy của riêng bạn.
Nếu bạn không biết nên truyền tham số nào cho capsolver, vui lòng tham khảo bốn tình huống khác nhau sau đây để truyền các tham số khác nhau. Nếu không có giải pháp nào đáp ứng được nhu cầu của bạn, vui lòng liên hệ với dịch vụ khách hàng của chúng tôi.
Trường hợp | Truyền tham số | Điều kiện tiên quyết |
---|---|---|
Trường hợp 1 | websiteURL | Mã phản hồi của trang captcha AWS có thể là 405 và các tham số sau có thể được tìm thấy trong html:window.gokuProps = {"key":"AQID...","iv":"A6we...","context":"rGXm.."} |
Trường hợp 2 | websiteURL awsKey awsIv awsContext awsChallengeJS | Theo tiền đề của trường hợp 1, nếu capsolver trả về thông báo lỗi: Captcha render unexpect status code XXX, please pass in the awsKey, awsIv, awsContext and awsChallengeJs parameters , điều đó có nghĩa là máy chủ không kích hoạt captcha. Vui lòng phân tích cú pháp thủ công các tham số key , iv và context và truyền chúng cho capsolver. |
Trường hợp 3 | websiteURL awsChallengeJS | Khi trang không tìm thấy key , iv , context , nhưng có challenge.js , hãy truyền challenge.js cho capsolver làm giá trị của awsChallengeJS. |
Trường hợp 4 | websiteURL awsProblemUrl | Phiên bản đặc biệt, khi trang không tìm thấy key , iv , context , challenge.js và chỉ tìm thấy captcha.js , bạn cần truyền url giao diện problem cho capsolver, awsProblemUrl phải chứa các giá trị như problem và num_solutions_required , có thể tìm thấy bằng cách tìm kiếm visualSolutionsRequired trong html của trang.awsProblemUrl ví dụ đầy đủ: https://ait.2608283a.us-east-1.captcha.awswaf.com/ait/ait/ait/problem?kind=visual&domain=www.amazon.com&locale=en-us&problem=gridcaptcha-5-0.15-0&num_solutions_required=2 |
Ví dụ yêu cầu
POST https://api.capsolver.com/createTask
Host: api.capsolver.com
Content-Type: application/json
{
"clientKey": "YOUR_API_KEY",
"task": {
"type": "AntiAwsWafTask", // Required
"websiteURL": "https://efw47fpad9.execute-api.us-east-1.amazonaws.com/latest", // Required
"awsKey": "AQIDAHjcYu/GjX+QlghicBg......shMIKvZswZemrVVqA==", // Optional
"awsIv": "CgAAFDIlckAAAAid", // Optional
"awsContext": "7DhQfG5CmoY90ZdxdHCi8WtJ3z......njNKULdcUUVEtxTk=", // Optional
"awsChallengeJS": "https://41bcdd4fb3cb.610cd090.us-east-1.token.awswaf.com/41bcdd4fb......a6c832/challenge.js", // Optional
"awsProblemUrl": "https://ait...awswaf.com/ait/ait/ait/problem?kind=visual&...&problem=gridcaptcha-5-0.1-0&num_solutions_required=2", // Optional
"proxy": "http:ip:port:user:pass" // socks5:ip:port:user:pass
}
}
Sau khi bạn gửi nhiệm vụ cho chúng tôi, bạn nên nhận được ‘ID nhiệm vụ’ trong phản hồi nếu nó thành công. Xin đọc errorCode: danh sách đầy đủ các lỗi nếu bạn không nhận được ID nhiệm vụ.
Ví dụ Phản hồi
{
"errorId": 0,
"errorCode": "",
"errorDescription": "",
"taskId": "61138bb6-19fb-11ec-a9c8-0242ac110006"
}
Lấy Kết quả
Sau khi bạn có taskId, bạn cần gửi taskId để lấy giải pháp. Cấu trúc phản hồi được giải thích ở getTaskResult.
Tùy thuộc vào tải của hệ thống, bạn sẽ nhận kết quả trong khoảng từ 5 giây
đến 30 giây
Ví dụ yêu cầu
POST https://api.capsolver.com/getTaskResult
Host: api.capsolver.com
Content-Type: application/json
{
"clientKey": "YOUR_API_KEY",
"taskId": "61138bb6-19fb-11ec-a9c8-0242ac110006"
}
Ví dụ Phản hồi
{
"errorId": 0,
"taskId": "646825ef-9547-4a29-9a05-50a6265f9d8a",
"status": "ready",
"solution": {
"cookie": "223d1f60-0e9f-4238-ac0a-e766b15a778e:EQoAf0APpGIKAAAA:AJam3OWpff1VgKIJxH4lGMMHxPVQ0q0R3CNtgcMbR4VvnIBSpgt1Otbax4kuqrgkEp0nFKanO5oPtwt9+Butf7lt0JNe4rZQwZ5IrEnkXvyeZQPaCFshHOISAFLTX7AWHldEXFlZEg7DjIc="
}
}
Sử dụng Yêu cầu SDK
# pip install --upgrade capsolver
# export CAPSOLVER_API_KEY='...'
import capsolver
# capsolver.api_key = "..."
solution = capsolver.solve({
"type": "AntiAwsWafTask",
"websiteURL": "https://efw47fpad9.execute-api.us-east-1.amazonaws.com/latest",
"proxy": "ip:port:user:pass"
})