UNLOCK API
Grid gambar

Grid gambar

Cara mengirim tugas Grid gambar ke UNLOCK API dengan createTask atau in.php: nama tipe tugas, semua parameter, objek solution, field proxy, dan contoh kode dalam 7 bahasa.
Harga
$0.36 $0.00036 per tugas
Yang Anda kirim
Gambar grid dalam base64 dan instruksinya, misalnya objek yang harus dipilih
Yang Anda terima
Nomor sel yang harus diklik

Ringkasan dan harga

Nama tipe tugas

Tipe ini hanya punya satu nama.
GridTask

Juga diterima: GridTaskProxyless

Objek task

type
StringWajib
Nama tipe tugas. Huruf besar atau kecil tidak berpengaruh. GridTask
body
StringWajib
Gambar sebagai base64 (JPG, PNG, atau GIF), hingga sekitar 100 KB. Awalan data: diperbolehkan.
comment
StringOpsional
Instruksi untuk pemecah, misalnya pertanyaan yang tampil di atas gambar.
rows
IntegerOpsional
Jumlah baris pada grid.
columns
IntegerOpsional
Jumlah kolom pada grid.
imgType
StringOpsional
Jenis gambar, jika Anda tahu.
previousId
StringOpsional
id tugas sebelumnya saat grid berubah setelah jawaban pertama.
canSkip
BooleanOpsional
true jika jawabannya bisa berupa tidak ada kotak yang cocok.

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

Request

POST /createTask
{
  "clientKey": "YOUR_API_KEY",
  "task": {
    "type": "GridTask",
    "body": "/9j/4AAQSkZJRgABAQ...",
    "comment": "Select all squares with traffic lights",
    "rows": 3,
    "columns": 3
  }
}

Objek solution

Dikembalikan di solution saat status ready.
click
Array
Nomor kotak yang diklik, dihitung dari 1, dari kiri ke kanan dan dari atas ke bawah.
POST /getTaskResult
{
  "errorId": 0,
  "taskId": 1001,
  "status": "ready",
  "solution": {
    "click": [
      1,
      4,
      9
    ]
  },
  "cost": "0.00036",
  "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": "GridTask",
      "body": "/9j/4AAQSkZJRgABAQ...",
      "comment": "Select all squares with traffic lights",
      "rows": 3,
      "columns": 3
    }
}).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"])
        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=base64&recaptcha=1&textinstructions=Select+all+traffic+lights&body=BASE64_IMAGE&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