Scarnox · Blog

Skor reCAPTCHA v3 dijelaskan: cara situs menilai pengunjung tanpa tantangan

reCAPTCHA v3 tidak menampilkan tantangan. Ia berjalan di latar belakang halaman, mengamati pengunjung, dan mengembalikan skor dari 0,0 hingga 1,0, di mana angka yang lebih tinggi berarti pengunjung lebih mungkin adalah manusia. Backend situs yang memutuskan apa yang dilakukan dengan skor itu. Formulir pendaftaran bisa meloloskan pengunjung dengan skor 0,7 dan memblokirnya pada 0,3. Dukungan Scarnox untuk reCAPTCHA v3 segera hadir. Panduan ini menjelaskan cara kerja skor dan cara yang sah untuk menjaga pekerjaan otomatis tidak dinilai sebagai bot.

Cara skor dihasilkan

Halaman memuat skrip reCAPTCHA dan memanggilnya untuk sebuah aksi, seperti login atau signup. Skrip mengumpulkan sinyal di browser dan mengirimkannya ke Google, yang lalu mengembalikan token. Server situs kemudian mengirim token itu ke endpoint verifikasi Google, bersama secret key-nya, dan menerima kembali skor serta nama aksi.

Skor adalah estimasi risiko yang dibangun dari beberapa jenis sinyal:

Bobot pastinya tidak dipublikasikan, dan bobot itu berubah. Yang bersifat publik adalah kontraknya: situs memilih ambang batas, dan skor menentukan hasilnya.

Mengapa otomatisasi mendapat skor rendah

Lalu lintas otomatis cenderung mendapat skor rendah karena alasan yang bisa diprediksi. Browser headless dengan pengaturan default memiliki sinyal yang tidak biasa. Sesi baru tidak memiliki riwayat. Pola request yang cepat dan teratur tidak terlihat seperti orang yang sedang menelusuri situs. Alamat datacenter diperlakukan lebih curiga daripada koneksi rumah. Setiap hal itu adalah sinyal, dan beberapa sinyal sekaligus bisa menurunkan skor di bawah ambang batas.

Karena tidak ada tantangan yang terlihat, skor rendah sering kali berarti kegagalan diam-diam. Halaman dimuat, form ditolak, dan tidak ada yang memberi tahu alasannya. Bangun logging Anda agar Anda bisa melihat error dari sisi server.

Cara sah untuk menjaga skor tetap sehat

Langkah-langkah ini ditujukan untuk pekerjaan Anda sendiri dan pengumpulan data yang sah:

  1. Gunakan profil browser sungguhan. Browser normal dengan pengaturan dan ekstensi biasa lebih jarang dinilai sebagai bot daripada build headless yang polos. Panduan browser fingerprinting menjelaskan cara lingkungan browser dibaca.
  2. Jaga sesi tetap hangat. Simpan cookie di antara request, dan jangan memulai setiap halaman dari keadaan kosong.
  3. Atur jeda request. Pengunjung manusia tidak memuat seratus halaman dalam satu detik. Tambahkan jeda dan acak dalam rentang yang masuk akal.
  4. Hindari tanda-tanda yang jelas. User agent default, pengaturan bahasa yang hilang, dan ukuran layar yang tidak konsisten adalah sinyal yang mudah diperbaiki.
  5. Uji terhadap ambang batas Anda sendiri. Jika Anda menjalankan situsnya, baca skor di staging dan periksa sinyal mana yang menurunkannya. Kunci uji Google berguna untuk menguji integrasi tanpa penilaian sungguhan.

Langkah-langkah ini mengurangi false positive pada pekerjaan yang sah. Langkah-langkah ini bukan cara untuk memalsukan skor manusia untuk penyalahgunaan, dan tidak ada pendekatan di sini yang mengubah kenyataan bahwa pemilik situs yang menentukan ambang batasnya.

Apa yang tidak dilakukan skor

Skor tidak membuktikan bahwa pengunjung adalah manusia, dan skor tidak memberi tahu Anda mengapa pengunjung mendapat skor rendah. Skor rendah bisa datang dari browser yang tidak biasa tetapi sah, jaringan bersama, atau VPN. Perlakukan skor sebagai salah satu input. Jika pekerjaan sah Anda terus mendapat skor rendah, jawaban yang jujur sering kali adalah meminta allowlist atau API kepada pemilik situs.

Posisi Scarnox

Scarnox saat ini belum memecahkan reCAPTCHA v3 secara langsung. Satu-satunya jenis tugas yang aktif adalah PopularCaptcha, proxyless. reCAPTCHA v3 segera hadir. Solver berbasis skor harus mengembalikan token yang diterima situs, yang merupakan masalah berbeda dari memecahkan teka-teki yang terlihat, jadi detail integrasinya akan didokumentasikan di referensi API ketika dukungannya dirilis.

Buat akun untuk memulai dengan kredit uji coba gratis, tanpa kartu, dan Anda akan siap ketika jenis ini sudah aktif.

Membaca skor di log Anda sendiri

Karena tidak ada tantangan yang terlihat, satu-satunya cara untuk memahami kegagalan berbasis skor adalah dengan mencatatnya. Di situs Anda sendiri, catat skor, nama aksi, dan flag keberhasilan yang diterima backend Anda dari panggilan verifikasi, bersama timestamp request dan path asalnya. Dalam satu minggu lalu lintas, polanya biasanya menunjukkan halaman atau alur mana yang mendapat skor rendah. Alur yang selalu rendah mungkin merupakan masalah nyata bagi pengguna sah, misalnya langkah pendaftaran yang terjadi terlalu cepat setelah halaman dimuat, bukan masalah bot.

Bandingkan juga skor untuk aksi yang sama di berbagai browser dan jaringan. Jika pengunjung normal di koneksi rumah mendapat skor baik dan pengunjung yang sama di VPN kantor mendapat skor buruk, skor itu merespons jaringannya, bukan browsernya, dan perbaikannya adalah diskusi tentang akses, bukan perubahan pada otomatisasi.

Jaga log bebas dari data pribadi. Skor dan nama aksi sudah cukup untuk mendiagnosis sebagian besar masalah, dan menyimpan lebih banyak dari yang Anda butuhkan menciptakan kewajiban privasi yang tidak Anda inginkan.

Scraping secara bertanggung jawab

Periksa robots.txt dan ketentuan situs sebelum pekerjaan scraping. Jaga laju tetap rendah, hindari pengumpulan data pribadi yang tidak Anda butuhkan, dan ingat bahwa pemeriksaan berbasis skor adalah cara yang dipilih situs untuk melindungi dirinya sendiri. Mengakalinya dalam skala besar adalah tanda bahwa pekerjaan itu perlu dipertimbangkan ulang atau disepakati dengan pemiliknya. Panduan apakah web scraping legal membahas gambaran yang lebih luas.

Langkah selanjutnya