
Aloísio Vítor
Image Processing Expert
Mệt mỏi với CAPTCHA...
Sự đấu tranh bất tận - CAPTCHA cố gắng phân biệt người dùng và bot
Trong khi CAPTCHA bảo vệ các trang web khỏi thư rác, chúng có thể chặn tự động hợp lệ cho:
Bảng điều khiển Capsolver - nơi khóa API nằm
Cài đặt các yêu cầu:
pip install requests
Lấy khóa API của bạn:
clientKey của bạnCách thức hoạt động của quá trình giải quyết CAPTCHA
Hướng dẫn mã hoàn chỉnh:
# pip install requests
import requests
import time
# TODO: thiết lập cấu hình của bạn
api_key = "YOUR_API_KEY" # khóa api của bạn của capsolver
site_key = "6Le-wvkSAAAAAPBMRTvw0Q4Muexq9bi0DJwx_kl-" # khóa site của trang web mục tiêu của bạn
site_url = "" # url trang của trang web mục tiêu của bạn
def capsolver():
payload = {
"clientKey": api_key,
"task": {
"type": 'ReCaptchaV3TaskProxyLess',
"websiteKey": site_key,
"websiteURL": site_url,
"pageAction": "login",
}
}
res = requests.post("https://api.capsolver.com/createTask", json=payload)
resp = res.json()
task_id = resp.get("taskId")
if not task_id:
print("Thất bại khi tạo tác vụ:", res.text)
return
print(f"Đã nhận được taskId: {task_id} / Đang lấy kết quả...")
while True:
time.sleep(1) # độ trễ
payload = {"clientKey": api_key, "taskId": task_id}
res = requests.post("https://api.capsolver.com/getTaskResult", json=payload)
resp = res.json()
status = resp.get("status")
if status == "ready":
return resp.get("solution", {}).get('gRecaptchaResponse')
if status == "failed" or resp.get("errorId"):
print("Giải quyết thất bại! phản hồi:", res.text)
return
token = capsolver()
print(token)
Các loại CAPTCHA phổ biến mà bạn sẽ gặp phải
| Loại tác vụ |
|---|
| ReCaptchaV2Task / ReCaptchaV2TaskProxyless |
| ReCaptchaV3Task / ReCaptchaV3TaskProxyless |
| GeeTestTask / GeeTestTaskProxyless |
| AntiTurnstileTaskProxyless |
| ImageToTextTask |
Khi giải pháp CAPTCHA của bạn thất bại...
Các bản sửa lỗi thông thường:
Xây dựng một công cụ giải Cloudflare Turnstile cho Scrapy với chuyển tiếp phiên của CapSolver, middleware tải xuống, hạn mức thử lại và xác minh nội dung.

Hãy theo dõi hướng dẫn tạo giải pháp reCAPTCHA này để xây dựng một kịch bản HTTP của CapSolver với createTask, getTaskResult, nhánh thử lại và xác minh.
