Proxy vs proxyless untuk memecahkan captcha: jenis tugas mana yang Anda butuhkan?
Scarnox menawarkan PopularCaptcha dalam dua varian: proxyless, di mana Scarnox memecahkan captcha melalui jaringannya sendiri, dan varian proxy, di mana Anda mengirim proxy yang digunakan bot Anda. Keduanya mengembalikan token dalam bentuk respons yang sama, dan keduanya gratis jika solve gagal. Satu-satunya perbedaan dalam request adalah proxy-nya.
Proxyless adalah titik awal yang tepat untuk sebagian besar situs. Kirim proxy Anda sendiri hanya ketika situs mengikat token ke alamat IP.
Dua jenis tugas
| Jenis tugas | Yang Anda kirim |
|---|---|
PopularCaptchaTaskProxyless | sitekey dan URL halaman |
PopularCaptchaTask (varian proxy) | sitekey, URL halaman, dan proxy Anda |
Keduanya adalah tugas PopularCaptcha. Sisa request, respons, dan penanganan token sama.
Mulai dengan proxyless
Solve proxyless berjalan di jaringan Scarnox sendiri. Integrasinya adalah yang paling sederhana yang bisa Anda tulis, dan untuk sebagian besar situs token tetap berfungsi tidak peduli IP mana yang kemudian mengirimkannya. Jika Anda belum yakin mana yang Anda butuhkan, mulailah di sini:
{
"captcha_type": "PopularCaptchaTaskProxyless",
"site_key": "10000000-ffff-ffff-ffff-000000000001",
"site_url": "https://example.com/signup"
}
Kirim proxy ketika token terikat pada IP
Beberapa situs memeriksa bahwa IP yang memecahkan captcha sama dengan IP yang mengirim form. Gejalanya jelas: token kembali tanpa error, tetapi situs menolaknya setiap kali. Solusinya adalah memecahkan melalui proxy yang sama dengan yang digunakan bot Anda untuk sisa sesi:
{
"captcha_type": "PopularCaptchaTask",
"site_key": "10000000-ffff-ffff-ffff-000000000001",
"site_url": "https://example.com/signup",
"proxy": "http://user:pass@203.0.113.10:8080"
}
Format proxy-nya adalah http://user:pass@host:port. Gunakan proxy yang sama untuk solve dan pengiriman, dan jaga agar tetap sticky untuk seluruh sesi. Mengganti proxy di antara solve dan pengiriman akan memunculkan kembali masalah ketidakcocokan IP.
Cara memutuskan
Jawab pertanyaan-pertanyaan ini secara berurutan:
- Apakah token berfungsi ketika Anda mengirimkannya dari mesin lain? Jika ya, gunakan proxyless.
- Apakah situs hanya menolak token ketika IP pengiriman berbeda dengan IP solve? Jika ya, kirim proxy.
- Apakah situs menggunakan cookie sesi atau pemeriksaan perangkat yang terikat pada satu IP? Jika ya, kirim proxy dan gunakan IP yang sama untuk seluruh sesi.
Uji kedua jenis pada uji coba gratis sebelum Anda berkomitmen. Buat akun dan mulai dengan kredit uji coba gratis, tanpa kartu, lalu jalankan alur yang sama sekali untuk setiap jenis.
Jika proxy Anda mati
Solve yang gagal itu gratis. Jika proxy mati atau diblokir oleh target, solve gagal dan Anda tidak dikenakan biaya. Uji proxy Anda sendiri sebelum menjalankan, periksa formatnya, dan pastikan target tidak memblokir rentang alamatnya. Proxy yang berfungsi untuk browser tetapi gagal pada solve biasanya disebabkan oleh masalah format.
Jaga kredensial proxy agar tidak masuk ke log
Alamat proxy yang disertai password adalah rahasia. Simpan di environment variable atau secret manager. Jangan mencetaknya di log, jangan melakukan commit, dan jangan menempelkannya di laporan bug. Jika Anda mencatat request solve untuk debugging, hapus field proxy terlebih dahulu.
Memilih proxy untuk varian tersebut
Solve bekerja dengan proxy apa pun yang Anda kirim, tetapi token hanya berguna jika IP yang sama mengirim form. Gunakan alamat residensial atau statis yang Anda kendalikan untuk seluruh sesi, bukan kumpulan yang berputar di setiap request. Situs yang mengikat token ke IP biasanya juga mengikat sesinya, jadi kumpulan yang berputar merusak alur dua kali.
Bagaimana dengan kecepatan?
Kedua varian mengembalikan token dari satu request yang menunggu, tanpa loop polling. Timeout-nya sama: sekitar 185 detik. Pilih varian berdasarkan pertanyaan tentang IP, bukan kecepatan.
Sesi dan proxy dalam praktik
Gunakan proxy yang sama dari request pertama sesi hingga yang terakhir. Alur tipikal memuat halaman pendaftaran, memecahkan captcha, dan mengirim form. Jika pemuatan halaman melewati satu alamat dan solve melewati alamat lain, situs yang terikat IP mungkin menolak token meskipun semuanya tampak benar.
Simpan satu pengaturan proxy di kode Anda dan berikan ke setiap langkah yang menyentuh situs. Jika bagian lain pekerjaan Anda memutar proxy untuk scraping, berikan alur captcha proxy sticky sendiri. Mencampur keduanya adalah salah satu penyebab paling umum token yang berfungsi saat pengujian gagal di produksi.
Setel field proxy hanya pada varian yang menggunakannya. Mengirim proxy dengan jenis tugas proxyless tidak meningkatkan solve, dan itu membuat Anda lebih sulit mengetahui mode mana yang digunakan sebuah run ketika membaca log.
Membaca log untuk mendapatkan jawaban yang tepat
Jika Anda tidak yakin mode mana yang dibutuhkan sebuah situs, jalankan keduanya pada halaman yang sama dan bandingkan. Catat apakah setiap token diterima, beserta jenis tugas dan apakah proxy dikirim. Situs yang secara konsisten menerima token proxyless tidak membutuhkan varian proxy. Situs yang hanya menolak token dari run tertentu menunjukkan adanya pemeriksaan IP. Biarkan log yang memutuskan, bukan tebakan.
Langkah selanjutnya
- Cara memecahkan PopularCaptcha dengan Python
- Memecahkan captcha tak terlihat
- Retry dan penanganan error yang tahan di produksi
- Uji coba gratis solver captcha
Mulai dengan kredit uji coba gratis, tanpa kartu: buat akun dan coba kedua jenis tugas pada satu halaman.