Bir web sitesini insan kullanıcı gibi açıp etkileşim kurabilen ama görsel arayüzü olmayan tarayıcıya headless browser denir. Yazılım testi, otomatik içerik üretimi ve veri toplama için meşru kullanımları olduğu kadar, bot trafiği üretmek için kötüye de kullanılır. Bu rehberde headless browser teknolojisini, Puppeteer ve Playwright araçlarını ve meşru ile kötü kullanım çizgisini açıklıyoruz.
İlgili içerikler: Request hit botu · Google hit botu · Bot trafiği tespiti · Playwright ile E2E testing
Headless Browser Nedir?
Headless browser, Chrome veya Firefox gibi gerçek bir tarayıcının görsel pencere açmadan, komut satırı veya bir API üzerinden çalıştırılan halidir. HTML/CSS render eder, JavaScript çalıştırır, ağ istekleri yapar — aynı normal tarayıcı gibi — ama hiçbiri ekranda görünmez. Bu, sunucu ortamlarında ve otomasyonda büyük esneklik sağlar.
Nasıl Çalışır?
Bir betik (Node.js, Python, Java) bir kontrol kütüphanesi (Puppeteer, Playwright, Selenium) üzerinden tarayıcıya komutlar gönderir: "şu URL'yi aç", "şu elementi tıkla", "sayfanın ekran görüntüsünü al". Tarayıcı bu komutları gerçek bir kullanıcı yapıyormuş gibi çalıştırır ve sonuçları geri döndürür. Tüm süreç görünmez şekilde, programatik olarak yürür.
Meşru Kullanım Alanları
- End-to-end (E2E) test: Web uygulamasının kullanıcı akışını otomatik test etmek. Detay: Playwright ile E2E testing.
- Otomatik ekran görüntüsü: Bir sayfanın render'ını farklı çözünürlüklerde almak.
- PDF üretimi: HTML şablonlardan dinamik PDF oluşturmak (fatura, rapor).
- Performans testi: Sayfa yükleme metriklerini ölçmek (LCP, CLS).
- İzinli veri toplama: Kendi sitenizden veya API erişimi olan kaynaklardan veri çıkarma.
Popüler Araçlar
| Araç | Geliştiren | Tarayıcı Desteği | Güçlü Yönü |
|---|---|---|---|
| Puppeteer | Chrome / Chromium | Chrome-odaklı, hızlı, basit API | |
| Playwright | Microsoft | Chrome, Firefox, Safari (WebKit) | Çoklu tarayıcı, modern API, paralel test |
| Selenium | Açık kaynak topluluk | Tüm büyük tarayıcılar | En eski/yaygın, çoklu dil desteği |
Kötüye Kullanım: Hit Botu Bağlamı
Headless browser teknolojisi, gerçek tarayıcıyı taklit ettiği için tarayıcı tabanlı hit botlarının teknolojik temelidir. Bir hit botu satıcısı "organik" veya "insansı" trafik vaat ediyorsa, arkasında büyük olasılıkla bir headless browser (Puppeteer veya Playwright) çalışmaktadır. Aracın kendisi nötr olsa da, bu kullanım net biçimde Google'ın spam politikalarını ihlal eder. Detay: request hit botu.
Headless Browser Nasıl Tespit Edilir?
Headless browser meşru bir araçtır, ama kötü niyetle kullanıldığında tespit edilebilir — çünkü meşru tarayıcılarla birkaç ince fark vardır:
navigator.webdriverözelliği — otomasyon çalışıncatruedöner.- Eksik veya beklenenden farklı
window.chromenesnesi. - "HeadlessChrome" içeren user-agent string'i (varsayılan ayar).
- Beklenmedik canvas/WebGL parmak izi.
- Olmayan plugin listesi veya boş
navigator.plugins. - Doğal olmayan zamanlama: tıklamalar arası sabit milisaniyeler.
Modern bot tespit servisleri (Cloudflare Bot Management, DataDome, PerimeterX) bu sinyallerin onlarcasını birden değerlendirir; hiçbir headless browser otomasyonu bu kontrollerin hepsini birden geçemez.
Kötü Niyetli Otomasyondan Koruma
- JavaScript challenge'larıyla otomasyonu zorla (tüm modern WAF'ler yapar).
- Bot management servisleri kullanın (Cloudflare, DataDome).
- Rate limiting + IP itibar kontrolü.
- Kritik endpoint'lerde captcha veya invisible challenge.
- Davranış analizi (fare/scroll/zaman örüntüleri).
Sıkça Sorulan Sorular
Headless browser yasa dışı mı?
Hayır. Headless browser meşru bir araçtır, milyonlarca yazılım testi ve otomatik raporlama bunu kullanır. Yasal sorun, aracın nasıl kullanıldığında çıkar: yetkisiz veri toplama, spam trafik üretme veya sahte etkileşim gibi durumlarda yaptırım olur.
Puppeteer mi Playwright mı seçmeliyim?
Yeni başlıyorsanız ve birden çok tarayıcıda test edecekseniz Playwright daha güçlü ve modern bir seçimdir. Yalnızca Chrome ile çalışacaksanız Puppeteer biraz daha hafiftir.
Cloudflare headless browser'ı tespit eder mi?
Evet. Cloudflare'ın Bot Management katmanı headless browser örüntülerini yüksek doğrulukla tespit eder; özellikle varsayılan ayarlarla çalışan otomasyonlar kolayca yakalanır.
KEYDAL hosting çözümleriyle WAF, bot koruması ve otomasyon dostu altyapıyla çalışın. KEYDAL hosting çözümleri