Datadome: giải mã captcha DataDome
Tạo tác vụ bằng phương thức createTask và nhận kết quả bằng phương thức getTaskResult.
ℹ️ Loại tác vụ này yêu cầu bạn phải có proxy riêng.
ℹ️ Vui lòng đảm bảo userAgent khớp: userAgent bạn gửi đến API của chúng tôi phải giống với userAgent bạn sử dụng
Slider Captcha và Interstitial (kiểm tra thiết bị)
Các loại tasks
mà chúng tôi hỗ trợ:
DatadomeSliderTask
loại tác vụ này yêu cầu bạn phải có proxy riêng.
Tạo tác vụ
Tạo tác vụ bằng createTask.
IP của bạn bị cấm trực tiếp và bạn phải thay đổi IP.
Cấu trúc đối tượng tác vụ
Thuộc tính | Loại | Bắt buộc | Mô tả |
---|---|---|---|
type | Chuỗi | Bắt buộc | DataDomeSliderTask (Cả slider và interstitial đều sử dụng loại này) |
captchaUrl | Chuỗi | Bắt buộc | nếu url chứa t=bv có nghĩa là IP của bạn bị cấm, t phải là t=fe |
userAgent | Chuỗi | Bắt buộc | Nó cần phải giống với userAgent bạn sử dụng để yêu cầu trang web. Hiện tại chúng tôi chỉ hỗ trợ userAgent sau đây |
proxy | Chuỗi | Bắt buộc | Tìm hiểu Sử dụng proxy |
Vui lòng sử dụng userAgent cố định mà chúng tôi cung cấp để yêu cầu trang web.
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/139.0.0.0 Safari/537.36
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.0.0 Safari/537.36
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/135.0.0.0 Safari/537.36
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/134.0.0.0 Safari/537.36
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": "DatadomeSliderTask",
"captchaUrl": "https://geo.captcha-delivery.com/captcha/?initialCid=AHrlqAAAAAMA1QGvUmJwyYoAwpyjNg%3D%3D&hash=789361B674144528D0B7EE76B35826&cid=6QAEcL8coBYTi9tYLmjCdyKmNNyHz1xwM2tMHHGVd_Rxr6FsWrb7H~a04csMptCPYfQ25CBDmaOZpdDa4qwAigFnsrzbCkVkoaBIXVAwHsjXJaKYXsTpkBPtqJfLMGN&t=fe&referer=https%3A%2F%2bck.websiteurl.com%2Fclient%2Fregister%2FYM4HJV%3Flang%3Den&s=40070&e=3e531bd3b30650f2e810ac72cd80adb5eaa68d2720e804314d122fa9e84ac25d",
// userAgent is the one you are using:
"userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/134.0.0.0 Safari/537.36",
"proxy": "158.120.100.23:334:user:pass",
}
}
Ví dụ phản hồi
{
"errorId": 0,
"status": "idle",
"taskId": "61138bb6-19fb-11ec-a9c8-0242ac110006"
}
Nhận kết quả
Sử dụng phương thức getTaskResult để lấy kết quả nhận dạng
Tùy thuộc vào tải hệ thống, bạn sẽ nhận được kết quả trong khoảng thời gian từ 1s
đến 20s
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,
"errorCode": null,
"errorDescription": null,
"solution": {
"userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/134.0.0.0 Safari/537.36",
"cookie": "datadome=yzj_BK...S0; Max-Age=31536000; Domain=; Path=/; Secure; SameSite=Lax"
},
"status": "ready"
}
Khắc phục sự cố
Lỗi thường gặp
- Cookie trả về bởi API không hoạt động — vẫn nhận lỗi 403.
- API trả về: “Proxy IP bị dịch vụ mục tiêu cấm”.
- API trả về: “Không thể giải quyết captcha: 1013”.
Các bước khắc phục sự cố
- Thử thay đổi proxy – IP của bạn có thể bị đưa vào danh sách đen.
- Kiểm tra loại proxy – Một số trang web xác minh tính nhất quán của IP. Nếu bạn đang sử dụng proxy xoay vòng, hãy thử chuyển sang proxy tĩnh.
- Kiểm tra userAgent – userAgent được gửi đến API của chúng tôi phải khớp với userAgent được sử dụng cho trang web mục tiêu.
- Kiểm tra Accept-Language – Một số trang web yêu cầu nó khớp với ngôn ngữ khu vực của trang web.
- Gỡ lỗi mã/chương trình của bạn (ví dụ: TLS, headers):
- Sao chép thủ công cookie DataDome từ trình duyệt của bạn vào mã và chạy lại.
- Nếu vẫn thất bại, mã của bạn có thể có vấn đề—kiểm tra TLS và headers.
- Kiểm tra headers – Đảm bảo chúng khớp với các headers được gửi bởi một trình duyệt thực, bao gồm cả thứ tự của các headers.
- Kiểm tra dấu vân tay TLS – Sử dụng một thư viện bắt chước các bắt tay TLS thực.
- Nếu lỗi vẫn tiếp diễn sau tất cả các kiểm tra, vui lòng báo cáo sự cố cho chúng tôi.
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": "DatadomeSliderTask",
"websiteURL": "https://bck.websiteurl.com/",
"captchaUrl": "https://geo.captcha-delivery.com/captcha/?initialCid=AHrlqAAAAAMA1QGvUmJwyYoAwpyjNg%3D%3D&hash=789361B674144528D0B7EE76B35826&cid=6QAEcL8coBYTi9tYLmjCdyKmNNyHz1xwM2tMHHGVd_Rxr6FsWrb7H~a04csMptCPYfQ25CBDmaOZpdDa4qwAigFnsrzbCkVkoaBIXVAwHsjXJaKYXsTpkBPtqJfLMGN&t=fe&referer=https%3A%2F%2Bck.websiteurl.com%2Fclient%2Fregister%2FYM4HJV%3Flang%3Den&s=40070&e=3e531bd3b30650f2e810ac72cd80adb5eaa68d2720e804314d122fa9e84ac25d",
# userAgent is the one you are using:
"userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/134.0.0.0 Safari/537.36",
"proxy": "158.120.100.23:334:user:pass"
})
Mã mẫu
# pip install requests
import requests
import time
api_key = "YOUR_API_KEY" # your api key of capsolver
def capsolver():
payload = {
"clientKey": api_key,
"task": {
"type": 'DatadomeSliderTask',
"websiteURL": "https://bck.websiteurl.com/",
"captchaUrl": "https://geo.captcha-delivery.com/captcha/?initialCid=AHrlqAAAAAMA1QGvUmJwyYoAwpyjNg%3D%3D&hash=789361B674144528D0B7EE76B35826&cid=6QAEcL8coBYTi9tYLmjCdyKmNNyHz1xwM2tMHHGVd_Rxr6FsWrb7H~a04csMptCPYfQ25CBDmaOZpdDa4qwAigFnsrzbCkVkoaBIXVAwHsjXJaKYXsTpkBPtqJfLMGN&t=fe&referer=https%3A%2F%2Bck.websiteurl.com%2Fclient%2Fregister%2FYM4HJV%3Flang%3Den&s=40070&e=3e531bd3b30650f2e810ac72cd80adb5eaa68d2720e804314d122fa9e84ac25d",
"proxy": "158.120.100.23:334:user:pass",
"userAgent": "please use our supported userAgent. It needs to match what you're using"
}
}
res = requests.post("https://api.capsolver.com/createTask", json=payload)
resp = res.json()
task_id = resp.get("taskId")
if not task_id:
print("Failed to create task:", res.text)
return
print(f"Got taskId: {task_id} / Getting result...")
while True:
time.sleep(1) # delay
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("cookie")
if status == "failed" or resp.get("errorId"):
print("Solve failed! response:", res.text)
return
cookie = capsolver()
print(cookie)