Web scraping projelerinde başarının %60'ı proxy stratejisinden gelir. Doğru havuz, doğru rotasyon ve doğru oturum yönetimi olmadan en iyi yazılmış scraper bile birkaç bin istek sonrası durur. Bu rehberde başarılı bir kazıma operasyonu için proxy seçim kriterlerini açıklıyoruz.

1. Hedef Analizi

Önce hedef sitenin koruma seviyesini sınıflandırın: Açık API (rate limit dışında engel yok), basit anti-bot (user-agent + rate kontrolü), orta seviye (Cloudflare basic, hCaptcha), yüksek koruma (Akamai, PerimeterX, DataDome). Her seviye farklı proxy türü ister.

2. Proxy Türü Eşleştirmesi

  • Açık API → Datacenter (ekonomik, hızlı)
  • Basit anti-bot → Datacenter + rate limiting
  • Orta koruma → Konut rotating
  • Yüksek koruma → Konut sticky + mobil destekli

3. Rotasyon Stratejisi

Üç ana model vardır: per-request rotasyon her istekte yeni IP, per-domain rotasyon site başına bir IP, time-based rotasyon belirli aralıklarla değişim. Cookie tabanlı oturumlar için per-domain veya sticky tercih edin; aksi halde aynı sayfayı farklı IP'lerden istemek bot davranışı olarak algılanır.

4. Eşzamanlılık (Concurrency)

Her IP'nin saniyede 1-3 istek limitiyle çalıştığını varsayın. 100 RPS gerekiyorsa en az 50 paralel IP havuzu lazım. trproxy konut paketinde sınırsız eşzamanlı bağlantı verdiğimizden bu sizin için sorun olmaz; iş scraper'ınızın paralelizasyonuna kalır.

5. Retry ve Backoff

403, 429, 503 yanıtlarını gözlemleyin. Aynı IP'den iki kez aynı kodu aldıysanız o IP'yi 5-10 dakika "cool down"a alın. Exponential backoff uygulayın: ilk hata 1s bekle, ikinci 2s, üçüncü 4s.

6. Header ve Fingerprint Yönetimi

Sadece IP değiştirmek yetmez. User-Agent, Accept-Language, Accept-Encoding değerleri tutarlı olmalı. TLS fingerprint (JA3) ve HTTP/2 davranışı modern bot tespitinde kullanılıyor. curl-impersonate veya undetected-chromedriver gibi araçlar bu noktada kritik.

"İyi scraper" şu denklemi sağlar: doğru proxy + doğru rotasyon + insansı header + makul gecikme = sürdürülebilir veri akışı.

7. Pratik Stack Önerileri

  • Python: Scrapy + scrapy-rotating-proxies, requests + httpx
  • Node.js: got-scraping, playwright-extra + stealth
  • Headless tarayıcı: Playwright veya Puppeteer + proxy chain
  • Yüksek hacim: Apache Spark + dağıtık worker'lar

8. Sık Yapılan Hatalar

Aynı oturum içinde IP değiştirmek, tek IP'den binlerce paralel bağlantı açmak, JavaScript çalıştırması gereken sayfayı plain HTTP ile çekmeye çalışmak, cookie'leri saklamamak — bunların hepsi başarı oranını çökertir.

Scraping projenize özel mimari önerisi için WhatsApp üzerinden teknik ekibimize ulaşın.