Scarnox · Blog

GeeTest captcha açıklaması: nasıl çalışır ve nasıl çözülür

GeeTest, ziyaretçiden görsel bir görevi yapmasını isteyen widget'lar sunan bir captcha sağlayıcısıdır: bir bulmaca parçasını boşluğa sürüklemek, simgeleri verilen sırayla tıklamak ya da kısa bir kaydırıcı hareketini takip etmek. E-ticaret sitelerinde, giriş sayfalarında ve birçok bölgedeki uygulama backend'lerinde yaygındır. Scarnox'un henüz çözmediği captcha ailelerinden biridir de. Bu rehber GeeTest'in nasıl çalıştığını, neden token tabanlı bir widget'tan daha zor otomatikleştirildiğini, insanların genel olarak hangi yaklaşımları kullandığını ve Scarnox desteğinin bugün nerede durduğunu açıklar.

GeeTest bir sayfada ne yapar

GeeTest captcha'sı genellikle üç adımda yüklenir:

  1. Sayfa GeeTest script'ini ekler ve bir captcha ID'si ile bir widget oluşturur. Birçok entegrasyonda bu ID gt adlı bir parametre olarak geçer.
  2. Widget, GeeTest sunucusundan taze bir bulmaca ister. Bulmaca bir challenge değeri ile bulmacanın ihtiyaç duyduğu görselleri ya da karo konumlarını içerir.
  3. Ziyaretçi görevi tamamladığında widget sonucu siteye geri gönderir. Sitenin backend'i formu kabul etmeden önce bu sonucu captcha sağlayıcısıyla doğrular.

Üçüncü adım önemlidir. Makul görünen bir değer yetmez, çünkü sunucu sonucu tek bir bulmacaya bağlı ve süresi dolan bir değerle kontrol eder. Bu yüzden başka bir oturumdan kopyalanan bir değer başarısız olur ve eski bir sonucun tekrar oynatılması işe yaramaz.

GeeTest neden token widget'ından zordur

PopularCaptcha'da sayfanın bir token dizisine ihtiyacı vardır ve tek bir istek bu diziyi döndürür. GeeTest üç yönden farklıdır:

Bu nedenle GeeTest çözümü çok adımlı bir iştir: bulmacayı getir, görseldeki hedefleri bul, bir hareket üret, gönder ve sonucu oku. Her adım başarısız olabilir ve adımlar arasında çok beklerseniz bulmaca süresi dolar.

Genel yaklaşımlar

GeeTest sayfalarını otomatikleştirenler genellikle üç yaklaşımdan birini kullanır. Hiçbiri bir kestirme yol değildir ve her birinin maliyeti vardır:

Hangisini seçerseniz kapsamı dürüst tutun: sahibi olduğunuz akışları, kullanmanıza izin verilen test ortamlarını ya da toplamanıza izin verilen herkese açık verileri otomatikleştirin.

Captcha ID'sini bulmak

Başlamak için koda ihtiyacınız yok. DevTools'u açın, sayfayı yeniden yükleyin ve Network sekmesinde geetest ya da gt için arama yapın. Widget'ı yükleyen ilk istek genellikle captcha ID'sini gösterir. Küçük bir script bunu kaydedebilir; bu, bir sayfa widget'ını değiştirdiğinde fark etmek istediğinizde kullanışlıdır:

import re
import requests

html = requests.get("https://example.com/login", timeout=30).text
match = re.search(r"gt['\"]?\s*[:=]\s*['\"]([a-f0-9]{32})['\"]", html)
print("captcha id:", match.group(1) if match else "not found")

Yukarıdaki desen gt yanında 32 karakterlik bir onaltılık değer arar. Satıcılar işaretlemelerini değiştirir; bu yüzden bunu bir başlangıç noktası sayın ve çıktıyı test ettiğiniz sayfayla kontrol edin.

Scarnox desteğinin durumu

Bir proje planlarken bunu net bilin:

Projeniz GeeTest'e şimdi ihtiyaç duyuyorsa pratik yol, test edebileceğiniz sayfalar için tarayıcı ve görüntü adımlarını kendiniz kurmak ve kodunuzu API yayına girdiğinde ona geçmeye hazır tutmaktır. Bu arada hesap oluşturabilir ve kredi kartı gerekmeden ücretsiz deneme kredisiyle başlayabilirsiniz. Bu size test edebileceğiniz çalışan bir PopularCaptcha akışı ve GeeTest'i daha sonra takabileceğiniz bir yer verir. Güncel oranlar için güncel fiyatlandırmaya bakın.

Meşru kullanımlar

Captcha otomasyonunu sahte hesap oluşturmak, bir giriş formuna saldırmak ya da sınırlı stok kapmak için kullanmayın. Bu kullanımlar çoğu sitenin kurallarını çiğner ve Scarnox tarafından desteklenmez.

Sonraki adımlar