UNLOCK API
KeyCaptcha

KeyCaptcha

Cara mengirim tugas KeyCaptcha ke UNLOCK API dengan createTask atau in.php: nama tipe tugas, semua parameter, objek solution, field proxy, dan contoh kode dalam 7 bahasa.
Harga
$1.495 $0.001495 per tugas
Yang Anda kirim
URL halaman dan empat nilai s_s_c dari halaman
Yang Anda terima
Token untuk field KeyCaptcha

Ringkasan dan harga

Nama tipe tugas

Pakai nama pertama untuk memecahkan tanpa proxy. Pakai nama kedua dan tambahkan field proxy untuk memecahkan lewat proxy Anda sendiri. Harganya sama.
KeyCaptchaTaskProxylessTanpa proxy
KeyCaptchaTaskLewat proxy Anda

Objek task

type
StringWajib
Nama tipe tugas. Huruf besar atau kecil tidak berpengaruh. KeyCaptchaTaskProxyless | KeyCaptchaTask
websiteURL
StringWajib
Alamat lengkap halaman tempat CAPTCHA muncul, diawali http:// atau https://.
s_s_c_user_id
StringWajib
Nilai s_s_c_user_id dari halaman.
s_s_c_session_id
StringWajib
Nilai s_s_c_session_id dari halaman.
s_s_c_web_server_sign
StringWajib
Nilai s_s_c_web_server_sign dari halaman.
s_s_c_web_server_sign2
StringWajib
Nilai s_s_c_web_server_sign2 dari halaman.

Field yang tidak tercantum di sini diteruskan ke pemecah apa adanya.

Field proxy

Hanya untuk nama tipe proxy. Kirim field terpisah atau satu string proxy.
proxyType
StringWajib
http, https, socks4, atau socks5.
proxyAddress
StringWajib
Alamat IP atau nama host proxy.
proxyPort
IntegerWajib
Port proxy.
proxyLogin
StringOpsional
Nama pengguna proxy, jika proxy memerlukannya.
proxyPassword
StringOpsional
Kata sandi proxy, jika proxy memerlukannya.
proxy
String
Semua field proxy dalam satu string, misalnya http://user:pass@1.2.3.4:8080.

Memakai proxy

Request

POST /createTask
{
  "clientKey": "YOUR_API_KEY",
  "task": {
    "type": "KeyCaptchaTaskProxyless",
    "websiteURL": "https://example.com/login",
    "s_s_c_user_id": "184015",
    "s_s_c_session_id": "9ff29e0176e78eb7ba59314f92dbac1b",
    "s_s_c_web_server_sign": "964635241a3e5e76980f2572e5f63452",
    "s_s_c_web_server_sign2": "3ca802a38ffc5831fa293ac2819b1204"
  }
}

Objek solution

Dikembalikan di solution saat status ready.
token
String
Token yang dikirim bersama form halaman.
POST /getTaskResult
{
  "errorId": 0,
  "taskId": 1001,
  "status": "ready",
  "solution": {
    "token": "d58e5a5bb1e2f58a3b2e6c6d6f8a1b2c|..."
  },
  "cost": "0.001495",
  "createTime": 1791640000,
  "endTime": 1791640014,
  "solveCount": 1
}

Contoh kode

import time, requests

API = "https://unlock-api.com"
KEY = "YOUR_API_KEY"

task = requests.post(f"{API}/createTask", json={
    "clientKey": KEY,
    "task": {
      "type": "KeyCaptchaTaskProxyless",
      "websiteURL": "https://example.com/login",
      "s_s_c_user_id": "184015",
      "s_s_c_session_id": "9ff29e0176e78eb7ba59314f92dbac1b",
      "s_s_c_web_server_sign": "964635241a3e5e76980f2572e5f63452",
      "s_s_c_web_server_sign2": "3ca802a38ffc5831fa293ac2819b1204"
    }
}).json()
if task["errorId"]:
    raise SystemExit(task["errorCode"])

for _ in range(60):   # 60 x 5 s = the 5 minute task limit
    time.sleep(5)
    r = requests.post(f"{API}/getTaskResult", json={"clientKey": KEY, "taskId": task["taskId"]}).json()
    if r["errorId"]:
        raise SystemExit(f"{r['errorCode']}: {r.get('errorDescription', '')}")   # failed tasks are refunded
    if r["status"] == "ready":
        print(r["solution"]["token"])
        break
else:
    raise SystemExit("timed out")

Metode form in.php

Tugas yang sama dengan request form klasik. res.php mengembalikan jawaban sebagai teks.
in.php, res.php
curl -s "https://unlock-api.com/in.php" -d "key=YOUR_API_KEY&method=keycaptcha&s_s_c_user_id=ID&s_s_c_session_id=SID&s_s_c_web_server_sign=S1&s_s_c_web_server_sign2=S2&pageurl=https://example.com/login&json=1"
# {"status":1,"request":"1001"}

curl -s "https://unlock-api.com/res.php?key=YOUR_API_KEY&action=get&id=1001&json=1"
# {"status":0,"request":"CAPCHA_NOT_READY"}  then  {"status":1,"request":"ANSWER"}

Form API: in.php dan res.php