Panduan
Tugas (Token)
DataDome

Datadome: menyelesaikan captcha DataDome

TIP

Buat tugas dengan metode createTask dan dapatkan hasilnya dengan metode getTaskResult.

BAHAYA

ℹ️ Jenis tugas ini memerlukan proxy Anda sendiri.

ℹ️ Pastikan userAgent cocok: userAgent yang Anda kirim ke API kami harus sama dengan yang Anda gunakan

Jenis Datadome yang kami dukung:

Slider Captcha dan Interstitial (Pemeriksaan perangkat)

Jenis tugas types yang kami dukung:

  • DatadomeSliderTask jenis tugas ini memerlukan proxy Anda sendiri.

Buat Tugas

Buat tugas dengan createTask.

Perhatian Anda harus mengamati apakah parameter `t` di `captchaUrl` sama dengan `fe`. Jika `t=bv` berarti IP Anda langsung diblokir, dan Anda harus mengubah IP.

Struktur Objek Tugas

PropertiTipeWajibDeskripsi
typeStringWajibDataDomeSliderTask (Baik slider maupun interstitial menggunakan tipe ini)
proxyStringWajibPelajari Menggunakan proxy
captchaUrlStringWajibjika url mengandung t=bv berarti IP Anda harus diblokir, t harus t=fe
userAgentStringWajibHarus sama dengan userAgent yang Anda gunakan untuk meminta situs web. Saat ini kami hanya mendukung userAgent berikut
htmlStringPilihanJika Anda mendapatkan kesalahan userAgent does not match or your proxy ip has been blocked, cobalah kirimkan html halaman captcha kepada kami
Harap gunakan user-agent tetap yang kami sediakan untuk meminta situs web.

Windows Chrome

Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/153.0.0.0 Safari/537.36

Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/152.0.0.0 Safari/537.36

Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/151.0.0.0 Safari/537.36

Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/150.0.0.0 Safari/537.36

Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.0.0 Safari/537.36

Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/148.0.0.0 Safari/537.36

Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/147.0.0.0 Safari/537.36

Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36

Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/145.0.0.0 Safari/537.36

Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36

Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36

Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/142.0.0.0 Safari/537.36

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


Windows Firefox

Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:155.0) Gecko/20100101 Firefox/155.0

Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:154.0) Gecko/20100101 Firefox/154.0

Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:153.0) Gecko/20100101 Firefox/153.0

Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:152.0) Gecko/20100101 Firefox/152.0

Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:151.0) Gecko/20100101 Firefox/151.0

Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:150.0) Gecko/20100101 Firefox/150.0

Contoh Permintaan

POST https://api.capsolver.com/createTask
Host: api.capsolver.com
Content-Type: application/json
{
  "clientKey": "YOUR_API_KEY",
  "task": {
    "type": "DatadomeSliderTask",
    "proxy": "158.120.100.23:334:user:pass",
    "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": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/153.0.0.0 Safari/537.36",
    "html": "<!DOCTYPE html><html..."
  }
}

Contoh Respons

{
  "errorId": 0,
  "status": "idle",
  "taskId": "61138bb6-19fb-11ec-a9c8-0242ac110006"
}
 

Mendapatkan Hasil

Gunakan metode getTaskResult untuk mendapatkan hasil pengenalan.

Tergantung pada beban sistem, Anda akan mendapatkan hasilnya dalam interval 1s hingga 20s.

Contoh permintaan

POST https://api.capsolver.com/getTaskResult
Host: api.capsolver.com
Content-Type: application/json
{
  "clientKey": "YOUR_API_KEY",
  "taskId": "61138bb6-19fb-11ec-a9c8-0242ac110006"
}

Contoh Respons

{
  "errorId": 0,
  "errorCode": null,
  "errorDescription": null,
  "solution": {
    "cookie": "datadome=yzj_BK...S0; Max-Age=31536000; Domain=; Path=/; Secure; SameSite=Lax"
  },
  "status": "ready"
}

Pemecahan Masalah Error

Error Umum

  1. Cookie yang dikembalikan oleh API tidak berfungsi — masih mendapatkan 403.
  2. API mengembalikan: “IP Proxy diblokir oleh layanan target”.
  3. API mengembalikan: “Gagal menyelesaikan captcha: 1013”.

Langkah-langkah Pemecahan Masalah

  1. Coba ganti proxy – IP Anda mungkin masuk daftar hitam.
  2. Periksa jenis proxy – Beberapa situs memverifikasi konsistensi IP. Jika Anda menggunakan proxy rotating, coba beralih ke proxy sticky.
  3. Periksa userAgent – userAgent yang dikirim ke API kami harus cocok dengan yang digunakan untuk situs target.
  4. Periksa Accept-Language – Beberapa situs mengharuskan agar cocok dengan bahasa regional situs.
  5. Debug kode/program Anda (misalnya, TLS, header):
  • Salin secara manual cookie DataDome dari browser Anda ke dalam kode Anda dan jalankan kembali.
  • Jika masih gagal, kode Anda kemungkinan memiliki masalah—periksa TLS dan header.
  1. Periksa header – Pastikan header tersebut cocok dengan yang dikirim oleh browser nyata, termasuk urutan header.
  2. Periksa TLS fingerprinting – Gunakan pustaka yang meniru jabat tangan TLS nyata.
  3. Jika error masih berlanjut setelah semua pemeriksaan, harap laporkan masalah tersebut kepada kami.

Gunakan Permintaan 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 adalah yang Anda gunakan:
    "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"
})

Contoh Kode

# 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": "harap gunakan userAgent yang kami dukung. Itu harus cocok dengan yang Anda gunakan"
        }
    }
    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)