Lewati ke konten
StatusDasbor

Jenis tugas

Pengenalan gambar hCaptcha

Halaman ini diterjemahkan otomatis dari versi bahasa Mandarin dan mungkin mengandung kesalahan. Versi bahasa Mandarin menjadi acuan utama.

IlustrasiKisi gambar: 9 gambar di bawah pertanyaan, kadang dengan gambar contoh (anchors) di kanan atas; API mengembalikan nomor gambar yang harus diklik.

HCaptchaClassification mengenali tantangan gambar yang muncul di hCaptcha: kirim pertanyaan dan gambarnya, lalu Anda mendapat hasil berupa gambar mana yang harus dipilih, posisi mana yang harus diklik, atau dari mana ke mana harus menyeret; program Anda yang menjalankan aksinya di browser. Jenis ini tidak mengembalikan token. Responsnya sinkron, biayanya 8 poin (≈ $1.20 / 1k) per permintaan, dan tidak ada pemotongan poin jika target tidak ditemukan (hasil kosong).

POSThttps://api.yescaptcha.com/createTaskEndpoint global
POSThttps://cn.yescaptcha.com/createTaskEndpoint Tiongkok
Jenis tugasHargaModeCatatan
HCaptchaClassification$1.20 / 1k; 8 poin/tugas · ¥8 / 1kSinkronTidak ada pemotongan poin jika target tidak ditemukan

Harga dalam dolar AS adalah perkiraan dengan kurs US$1 ≈ ¥6.67; tugas ditagih dalam poin.

KolomTipeWajibDeskripsi
typestringYaJenis tugas; lihat "Jenis tugas dan harga" di halaman ini
queriesarrayYaDaftar gambar soal dalam encoding Base64, sesuai urutan di halaman (9 gambar kecil untuk kisi 3×3)
questionstringTidakPertanyaan lengkap seperti yang ditampilkan di halaman (disarankan bahasa Mandarin Sederhana atau Inggris), misalnya Please click each image containing a bicycle. Kirim minimal salah satu dari question dan anchors; disarankan mengirim keduanya
anchorsarrayTidakDaftar gambar contoh dalam encoding Base64 yang ditampilkan di samping pertanyaan; wajib dikirim untuk pertanyaan yang memiliki gambar contoh
  • Kirim question persis seperti kalimat lengkap yang tampil di halaman; tidak perlu diterjemahkan, tetapi disarankan mengganti bahasa hCaptcha ke Mandarin Sederhana atau Inggris. Pertanyaan baru umumnya segera didukung, dan kategori yang benar-benar baru didukung dalam 3 hari kerja.

Pertanyaannya berbunyi “Please click each image containing …” dengan 9 gambar kecil di bawahnya. Masukkan Base64 dari 9 gambar kecil tersebut ke queries secara berurutan:

POST https://api.yescaptcha.com/createTask
{
"clientKey": "YOUR_CLIENT_KEY",
"task": {
"type": "HCaptchaClassification",
"question": "Please click each image containing a bicycle",
"queries": ["BASE64_IMAGE_1", "BASE64_IMAGE_2"]
}
}

Hasil:

{
"errorId": 0,
"status": "ready",
"solution": {
"objects": [true, false, false, true, true, false, true, true, false],
"top_k": [0, 3, 4, 6, 7],
"confidences": [1.0, 0.0, 0.0, 1.0, 1.0, 0.0, 1.0, 1.0, 0.0]
}
}

objects dan top_k memiliki arti yang sama: objects menunjukkan apakah tiap gambar adalah target, sedangkan top_k berisi nomor urut gambar target (dimulai dari 0). Cukup klik gambar-gambar tersebut.

Pertanyaannya berbunyi “Please click …”, dengan satu gambar besar di bawahnya, dan Anda perlu mengklik satu (atau beberapa) posisi pada gambar itu.

  1. Ambil question dari halaman; jika ada gambar contoh kecil, masukkan ke anchors.
  2. Masukkan satu gambar ke queries: sebaiknya gambar asli yang diekspor langsung dari canvas (disarankan dikonversi ke JPG). Jika hanya bisa mengambil tangkapan layar, tangkap area gambar besar di dalam kotak merah di bawah ini, jangan lebih dan jangan kurang.
  3. box pada hasil adalah koordinat yang harus diklik, berurutan x1, y1, x2, y2, …, dengan titik asal di pojok kiri atas gambar yang diunggah.
  4. Jika ukuran gambar yang diunggah berbeda dengan ukuran tampilannya di halaman, lakukan konversi: x di halaman = x hasil × lebar tampilan ÷ lebar gambar yang diunggah (y sama). Contoh: hasil x = 769, lebar tampilan canvas 350, lebar gambar yang diunggah 1000, maka posisi yang diklik di halaman adalah 769 × 350 ÷ 1000 ≈ 269.

Area tangkapan layar untuk soal klik: teks pertanyaan sebagai question, tiga gambar contoh kecil sebagai anchors, gambar besar di bawahnya sebagai queries

POST https://api.yescaptcha.com/createTask
{
"clientKey": "YOUR_CLIENT_KEY",
"task": {
"type": "HCaptchaClassification",
"question": "Please click on the entity present in the sample image.",
"anchors": ["BASE64_ANCHOR_1", "BASE64_ANCHOR_2", "BASE64_ANCHOR_3"],
"queries": ["BASE64_OF_THE_BIG_IMAGE"]
}
}

Hasil:

{
"errorId": 0,
"status": "ready",
"solution": {
"box": ["221", "213"]
}
}

Jika ada beberapa target yang harus diklik, box berisi beberapa pasang koordinat secara berurutan: ["221", "213", "340", "118", ...].

Pertanyaannya berbunyi “Drag … to …”, dan Anda perlu menyeret potongan di sebelah kanan ke posisi yang sesuai pada gambar.

  1. Ambil question dari halaman.
  2. Ambil satu tangkapan layar dan masukkan ke queries; gambar harus memuat sekaligus potongan yang akan diseret dan posisi tujuannya, dengan setiap sisi gambar minimal 260 piksel.
  3. Setiap item di box pada hasil adalah satu kali seretan: start adalah posisi potongan, end adalah posisi tujuan. Jika ada beberapa potongan, seret satu per satu.
{
"errorId": 0,
"status": "ready",
"solution": {
"type": "drag",
"box": [
{
"start": [644, 218],
"end": [239, 315]
}
]
}
}

Contoh hasil pengenalan soal seret: Start adalah potongan yang diseret, End adalah posisi tujuan

Jika yang Anda peroleh adalah data protokol (gambar potongan, koordinat potongan, dan gambar latar besar) dan bukan tangkapan layar, tempelkan dulu potongan ke gambar latar sesuai koordinatnya hingga tampilannya sama dengan tangkapan layar halaman, lalu kirim.

Jika gambar pertanyaan berupa animasi, masukkan Base64 animasi (GIF atau format lain) ke queries. Disarankan durasi animasi minimal 3 detik, idealnya 5 sampai 6 detik, dengan frame rate sekitar 12 FPS.

Jika verifikasi gagal setelah klik, Anda dapat melaporkannya dengan report dalam 1 jam; pengembalian poin setelah laporan diselesaikan sekitar 24 jam kemudian. Aturannya ada di Penagihan dan pengembalian poin.