Scarnox · Blog

Meşru otomasyon ve testler için captcha nasıl aşılır

Captcha'yı meşru şekilde aşmak, otomatik çalışan işinizin sitenin kurallarını çiğnemeden ya da kullanıcılarına zarar vermeden bir doğrulamayı geçmesini sağlamak demektir. Pratikte bu dört durumu kapsar: sahibi olduğunuz bir iş akışını otomatikleştirmek, kendi sitenizi test etmek, erişilebilir araçlar geliştirmek ve herkese açık veriyi sorumlu bir hızda toplamak. En dürüst yol çoğu zaman captcha'yı hiç tetiklememektir. Kaçınamadığınızda ise Scarnox gibi bir solver API'si, sayfanın beklediği token'ı döndürebilir.

Bu rehber yaklaşımları denemeniz gereken sırayla sunar ve geçmemeniz gereken sınırları işaretler.

Önce captcha'nın neden çıktığını sorun

Captcha bir sinyaldir. Site, bir isteğin otomatik ya da riskli göründüğüne karar vermiştir. Doğrulamayı aşmaya çalışmadan önce neyin tetiklediğine bakın:

Nedeni düzeltmek captcha'yı çoğu zaman tamamen ortadan kaldırır; bu, her istekte onu çözmekten daha iyidir.

Doğrulamadan kaçınan yaklaşımları deneyin

  1. Varsa resmi bir API kullanın. Birçok site verisini kendi anahtarları ve limitleriyle bir API üzerinden yayınlar. Bu yol daha hızlı, daha stabil ve açıkça izinlidir.
  2. Yavaşlayın ve istekleri yayın. İstekler arasına gecikme koyun, eşzamanlılığı sınırlayın ve bir uyarı aldığınızda geri çekilin. Dakikada birkaç istekten oluşan sabit bir hız, bir sitenin gözünde yüzlerce isteklik bir patlamadan çok farklı görünür.
  3. Oturumları koruyun. Her sayfada sıfırdan başlamak yerine, bir oturum boyunca çerezleri ve tutarlı bir tarayıcı profilini yeniden kullanın. Tarayıcı parmak izi rehberi bunun neden önemli olduğunu anlatır.
  4. Başlamadan önce robots.txt ve kullanım koşullarını kontrol edin. Engellendikten sonra değil, başlamadan önce. Sitenin istediğine uyun.

Test anahtarlarını ve test ortamlarını kullanın

Captcha kendi staging ortamınızı engelliyorsa, testlerinizi geçmek için üretime yönlendirmeyin. Google ve Cloudflare dahil çoğu captcha sağlayıcısı geliştirme için test anahtarları yayınlar. Bu anahtarlar gerçek bir doğrulama olmadan geçerli bir token üretir ve otomatik testler için doğru araçtır. Ayrıca kendi ekibinizden staging sunucusunda captcha'yı devre dışı bırakmasını da isteyebilirsiniz. Captcha'lı otomatik testler rehberi bu kurulumu adım adım anlatır.

Meşru bir işin önündeyse captcha'yı bir API ile çözün

İyi bir hız ayarına rağmen bazı captcha'lar meşru bir işte yine de çıkacaktır. Tedarikçinizin portalını kontrol eden bir izleme işi buna örnektir. Bu durumda bir solver API'si uygun araçtır.

Scarnox bir captcha çözme API'sidir. Bugün tek canlı görev türü PopularCaptcha'dır, proxysiz. Kodunuz sitekey'i ve sayfa URL'sini gönderir, formla birlikte gönderilecek bir token alır:

import requests

r = requests.post(
    "https://api.scarnox.com/api/tasks/create",
    headers={"Authorization": "Bearer scarnox_YOURAPIKEY"},
    json={
        "captcha_type": "PopularCaptchaTaskProxyless",
        "site_key": "10000000-ffff-ffff-ffff-000000000001",
        "site_url": "https://example.com/login",
    },
    timeout=185,
)
data = r.json()
token = data["solution"]["token"] if data.get("errorId") == 0 else None

Token yaklaşık iki dakikada süresi dolar, bu yüzden hemen gönderin. Tam örnek için Python ile captcha çözme rehberi bölümüne bakın. reCAPTCHA, Cloudflare Turnstile ve Arkose dahil diğer captcha türleri yakında geliyor. Bunlar yayına girene kadar bir solver'ın onları çözdüğünü varsaymayın.

Erişilebilirlik de meşru bir sebeptir

Captcha'lar ekran okuyucu kullanan, cihaz değiştiren ya da bilişsel veya görsel engeli olan insanlar için bir engeldir. Erişilebilirlik araçları geliştiriyorsanız ya da bir doğrulamayı tamamlayamayan kullanıcılar adına hareket ediyorsanız, ilk adım site sahibinden erişilebilir bir alternatif istemektir. Birçok site bunu sunar. Bir captcha'yı otomatikleştirmek bu konuşmanın yerini tutmaz.

Meşru olmayan kullanımlar

Captcha çözmenin bazı kullanımları, verilen gerekçe ne olursa olsun sınırların dışındadır. Şunlar için çözücü ya da herhangi bir bypass kullanmayın:

Bu kullanımlar gerçek insanlara zarar verir, site koşullarını çiğner ve sizi ciddi yasal riske sokar. Scarnox bunları desteklemez ve bu rehber bunları kapsamaz.

Sorumlu scraping

Bypass'ınız herkese açık veri toplamak için varsa şunları aklınızda tutun:

Özet

Önce nedeni düzelterek captcha'dan kaçının. Testler için test anahtarlarını kullanın. Meşru işlerde, canlı görev türleri içinde, bir doğrulamaya yine de takılan işler için bir solver API'si kullanın. Yukarıda listelenen kullanımlardan uzak durun ve bir sitenin taşıyabileceği bir hızda scrape edin.

Sonraki adımlar