Camoufox ve Residential Proxy: Kod Odaklı Python Rehberi

C++ düzeyinde yamalanmış Firefox olan Camoufox'u residential proxy arkasında çalıştırma: güncel Python API'si, geoip'in neden sabit oturum gerektirdiği, parmak izi tutarlılık listesi ve Patchright ya da nodriver'ın ne zaman daha uygun olduğu.

Camoufox with Residential Proxies: A Code-First Python Guide
Bu makalede

Camoufox'u residential proxy ile çalıştırmak için Camoufox() ya da AsyncCamoufox() çağrısına Playwright tarzı bir proxy sözlüğü verin, saat dilimini, dil ayarını ve konumu çıkış IP'sinden okuması için geoip=True ayarlayın ve sabit (sticky) oturum kullanın; böylece Camoufox'un açılışta sorguladığı IP ile gezindiğiniz IP aynı olur. Camoufox, parmak izi yamaları JavaScript üzerine yazılmış bir katman değil, doğrudan C++ kodunda olan bir Firefox derlemesidir. Size kalan iş, ağ kimliği ile tarayıcı kimliğini birbiriyle tutarlı tutmaktır. Bu rehberin geri kalanında kodu, arkasındaki kontrolleri ve Camoufox'un hangi durumlarda yanlış araç olduğunu bulacaksınız.

Camoufox nedir ve neden residential proxy ile birlikte kullanılır?

Camoufox, scraping ve AI ajanları için geliştirilmiş açık kaynaklı bir Firefox çatallamasıdır. Python'dan (PyPI'daki camoufox paketi) ya da Eylül 2026'dan beri resmi npm başlatıcısıyla, alışıldık Playwright API'si üzerinden yönetilir. README dosyasına göre veriler "C++ uygulama düzeyinde yakalanıyor"; dolayısıyla navigator, ekran, WebGL veya fontları inceleyen bir sayfa yamalı JavaScript fonksiyonları değil, yerel getter'lar görür.

Bu, Chromium tarafındaki araçlardan farklı bir yaklaşım. Patchright, Chrome'un kendisine dokunmayan, bunun yerine sürücünün Chrome DevTools Protocol (CDP) üzerinden Runtime.enable çağırmak gibi tespit edilebilir işler yapmasını engelleyen yamalı bir Playwright sürücüsüdür. nodriver ise WebDriver'ı tamamen bırakır ve standart bir Chrome ile doğrudan CDP üzerinden konuşur. İkisi de otomasyonla çalışan bir Chrome'u Chrome gibi gösterir. Camoufox ise otomasyonla çalışan bir Firefox'u farklı farklı Firefox kurulumları gibi gösterir; Playwright onu CDP ile değil, Firefox'un kendi otomasyon protokolü Juggler ile kontrol eder. Camoufox yamaları Juggler'a sayfanın yalıtılmış bir kopyasını verir, bu yüzden Playwright'ın yardımcıları (örneğin window.__playwright__binding__) sayfa betiklerine hiçbir zaman görünmez.

Residential proxy'ye ihtiyaç duyulmasının nedeni, Camoufox'un IP'yi gizleyememesi. Her açılışta yeni bir cihaz kimliği üretilir: işletim sistemi, ekran, GPU, fontlar, sesler, dil. Bu kimlik "Almanya'da bir ev bilgisayarı" derken bağlantı Virginia'daki bir veri merkezi aralığından geliyorsa, parmak izi için harcanan emeğin hiçbir değeri kalmaz. README de Camoufox'un "dönen proxy'lerle (tercihen residential IP'lerle) kullanılmak üzere tasarlandığını" söylüyor.

Camoufox'u kurun ve tarayıcıyı indirin

Kurulum iki adımdan oluşur: önce Python paketi, ardından ayrıca indirilen yamalı Firefox ikili dosyası.

pip install -U "camoufox[geoip]"
python -m camoufox fetch

[geoip] eki geoip2 okuyucusunu ekler; Camoufox da bununla birlikte bir coğrafi konum veri seti indirir. Kurulum belgeleri bunu isteğe bağlı olarak tanımlasa da "proxy kullanıyorsanız kesinlikle önerilir" diyor; zaten geoip=True bu ek olmadan çalışmaz. Bağımlılıkları sabitlerken önemli olan iki sürüm notu:

  • Ekim 2026 başı itibarıyla PyPI'daki güncel kararlı sürüm, Firefox 152 üzerine derlenmiş camoufox 0.5.6 (6 Eylül 2026). Eylül sonunda Firefox 156 tabanlı derlemeler GitHub ön sürümleri ve 0.5.7b* betaları olarak yayımlanıyordu. Belirli bir düzeltmeye ihtiyacınız yoksa kararlı sürümü kullanın.
  • Paket Python 3.10 veya üstünü gerektiriyor ve sunucu modu Playwright'ın özel bir modülünü içe aktardığı için pyproject.toml dosyası playwright<1.63 sabitlemesi içeriyor. Projenizde başka bir bileşen en yeni Playwright'ı istiyorsa çakışma bekleyin.

Python API'si: sync, async ve önemli seçenekler

Camoufox, Playwright'ın Firefox başlatıcısını sarmalar; tarayıcı nesnesini aldıktan sonra bütün Playwright çağrıları her zamanki gibi çalışır. Sync ve async giriş noktaları context manager olarak kullanılır:

from camoufox.sync_api import Camoufox

with Camoufox(headless=True) as browser:
    page = browser.new_page()
    page.goto("https://example.com")
    print(page.title())
import asyncio
from camoufox.async_api import AsyncCamoufox

async def main():
    async with AsyncCamoufox(headless=True) as browser:
        page = await browser.new_page()
        await page.goto("https://example.com")
        print(await page.title())

asyncio.run(main())

Proxy ile çalışırken en çok şu anahtar kelime argümanları önemlidir. Açıklamalar kullanım belgelerinden ve pythonlib kaynak kodundaki launch_options() docstring'inden alınmıştır:

  • proxy: bir Playwright proxy sözlüğü (server, username, password). geoip=True ise Camoufox çıkış IP'sini öğrenmek için açılışta bu proxy üzerinden bir istek de gönderir.
  • geoip: çıkış IP'sini otomatik sorgulamak için True ya da doğrudan bir IP dizesi. Camoufox bu IP'den enlem/boylam, saat dilimi, ülke, dil ayarı ve WebRTC IP'sini belirler. Veritabanını geoip_db seçer. 30 Eylül 2026'da main dalı varsayılanı "GeoIP AIO" yaptı ve GeoLite2'yi kullanımdan kaldırdı; kurulu sürümünüzün hangisini kullandığını kontrol edin.
  • locale: "en-US" gibi açık bir dil ayarı, "US" gibi bir ülke kodu (bu durumda Camoufox o ülkedeki konuşur dağılımına göre bir dil seçer) ya da bir liste. Intl API'sini ilk öğe belirler.
  • humanize: True ya da imleç hareketinin saniye cinsinden azami süresini veren bir float. Kararlı 0.5.6 hâlâ Bézier eğrileri çiziyor. Main dalı 24 Eylül 2026'da Cursory veri setinden kaydedilmiş gerçek insan fare yollarını yeniden oynatmaya geçti; bunu yalnızca Firefox 156 ön sürümleri veya sonraki derlemelerle elde edersiniz.
  • headless: varsayılanı False. True, Camoufox'un normal bir pencere gibi görünmesi için yamaladığı Firefox headless modunu kullanır. "virtual" ise tarayıcıyı bir Xvfb sanal ekranı içinde headful çalıştırır. Bu seçenek yalnızca Linux'ta çalışır ve xvfb paketinin kurulu olmasını gerektirir.
  • os: üretilen kimliği "windows", "macos", "linux" veya bunların bir listesiyle sınırlar.
  • block_webrtc, block_images, block_webgl: açma/kapama anahtarları. Projenin kendi uyarılarına göre WebGL'i veya görselleri engellemenin büyük WAF'larda tespite yol açtığı bildirilmiş.

Sanal ekran sayfası "virtual" seçeneğinin gerekçesini açıklıyor: Camoufox headless modu yamalasa da "headless modda çalışmak gelecekte yine de tespit edilebilir hale gelebilir". Linux sunucuda Xvfb biraz ek bellek tüketir ama headless'a özgü bir dizi ipucunu ortadan kaldırır. Genellikle buna değer.

Çalışan bir örnek: ülke hedefli, sabit, tutarlı

Aşağıdaki örnek, ProxyHat gateway'i üzerinden Almanya çıkışlı çok adımlı bir oturum açıyor, saat dilimini ve dil ayarını Camoufox'un çıkış IP'sinden türetmesine izin veriyor ve asıl işe başlamadan önce kimliğin tutarlı olup olmadığını kontrol ediyor. Ülke ve oturum bilgisi proxy kullanıcı adında yer alır.

import asyncio
import secrets
from camoufox.async_api import AsyncCamoufox

PROXY_USER = "USERNAME"
PROXY_PASS = "PASSWORD"


def proxy_for(country: str, session_id: str) -> dict:
    # Sabit oturum + ülke hedefi, ikisi de kullanıcı adında
    return {
        "server": "http://gate.proxyhat.com:8080",
        "username": f"{PROXY_USER}-country-{country}-sid-{session_id}-ttl-10m",
        "password": PROXY_PASS,
    }


COHERENCE_JS = """() => ({
    tz: Intl.DateTimeFormat().resolvedOptions().timeZone,
    offsetMin: new Date().getTimezoneOffset(),
    lang: navigator.language,
    langs: navigator.languages,
    platform: navigator.platform,
})"""


async def run(country: str = "DE") -> None:
    session_id = secrets.token_hex(4)  # tüm akış için tek IP
    async with AsyncCamoufox(
        proxy=proxy_for(country, session_id),
        geoip=True,               # saat dilimi/dil/konum/WebRTC çıkış IP'sinden
        humanize=True,            # insansı imleç hareketi
        headless="virtual",       # Linux + Xvfb; diğer sistemlerde headless=True
        os=["windows", "macos"],
    ) as browser:
        page = await browser.new_page()

        # 1. Dış dünya ne görüyor?
        await page.goto("https://ipinfo.io/json")
        exit_info = await page.evaluate("() => JSON.parse(document.body.innerText)")

        # 2. Tarayıcı ne iddia ediyor?
        claimed = await page.evaluate(COHERENCE_JS)

        print("exit:", exit_info.get("ip"), exit_info.get("country"), exit_info.get("timezone"))
        print("browser:", claimed)
        if exit_info.get("timezone") != claimed["tz"]:
            raise RuntimeError("timezone does not match exit IP; abort before real traffic")

        # 3. Aynı IP üzerinde gerçek çok adımlı iş
        await page.goto("https://example.com/", wait_until="domcontentloaded")
        # ... giriş, sayfalama, form gönderimi; hepsi aynı session_id ile


asyncio.run(run("DE"))

Neden bu şekilde kurgulandığı:

  • geoip=True ile sabit oturum şarttır. Sorgu bir kez, tarayıcı açılırken yapılır: Camoufox'un public_ip() fonksiyonu proxy'niz üzerinden herkese açık bir IP yankı servisine istek gönderir ve kimliği gelen yanıta göre oluşturur. Kullanıcı adında oturum yoksa dönen bir gateway, sonraki bağlantıya farklı bir residential IP verebilir. Tek saat dilimli bir ülkede bu nadiren fark edilir. ABD, Rusya, Brezilya veya Avustralya'da ise ikinci IP, tarayıcının bildirdiğinden birkaç saat dilimi uzakta olabilir. Sabit oturum, sorgulanan IP ile gezinilen IP'yi aynı yapar (ayrıntılar sabit ve dönen oturumlar rehberimizde).
  • Oturum kimliği sayfa başına değil, tarayıcı başına bir tane. Rotasyonu tarayıcıyı kapatıp yeni bir session_id ile yeniden açarak yapın. Böylece yeni IP ve yeni parmak izi aynı anda gelir; farklı bir ziyaretçi de tam olarak böyle görünür.
  • ipinfo kontrolü ucuz bir erken uyarı. Herhangi bir IP coğrafi konum uç noktası işinizi görür. Amaç, hedefe istek harcamadan önce ağın söyledikleriyle tarayıcının söylediklerini karşılaştırmak. Coğrafi konum veritabanları uç durumlarda birbirini tutmayabilir; bu yüzden uyuşmazlığı bir şeyin bozuk olduğunun kanıtı olarak değil, yeniden başlatma gerekçesi olarak görün.
  • HTTP uç noktasını tercih edin. Playwright'ın ağ belgeleri kullanıcı adı/parola doğrulamasını yalnızca HTTP(S) proxy'ler için belgeliyor. SOCKS5 (gate.proxyhat.com:1080) proxy türü olarak destekleniyor, ancak tarayıcı üzerinden kimlik doğrulamalı SOCKS genellikle kurulumların bozulduğu yer. Daha geniş artı ve eksiler için HTTP ve SOCKS5 yazımıza bakabilirsiniz.

Parmak izi tutarlılığı kontrol listesi

Tutarlılık; çıkış IP'sinin ülkesi, saat dilimi, dil, WebRTC adresi, işletim sistemi, fontlar ve GPU'nun hepsinin tek bir yerdeki makul tek bir makineyi tarif etmesi demektir. Tarayıcı tarafını Camoufox halleder; hataların çoğu sizin geçersiz kıldığınız ayarlardan kaynaklanır. Ölçeklendirmeden önce şunları kontrol edin:

  1. Çıkış IP'si ülkesi ↔ saat dilimi. Hem Intl.DateTimeFormat().resolvedOptions().timeZone hem de Date.getTimezoneOffset() değerine bakın. Tespit betikleri IP'nin coğrafi olarak belirlenen saat dilimini tarayıcınınkiyle karşılaştırır ve uyuşmazlık en eski proxy ipuçlarından biridir. Sabit oturumda geoip=True ile bu ikisi zaten tasarım gereği eşleşir.
  2. Çıkış IP'si ülkesi ↔ dil. navigator.language, navigator.languages ve Accept-Language başlığı ülkeye uymalı. Camoufox başlığı ve navigator değerlerini sizin yerinize senkronize tutar. locale= veriyorsanız bölge içeren tam bir dil ayarı verin ("de" değil, "de-DE"): proje, eksik bölgenin sizin için üretildiği ve bunun "IP'niz dil ayarındaki bölgeyle eşleşmiyorsa şüphe uyandırabileceği" konusunda uyarıyor.
  3. WebRTC ↔ çıkış IP'si. WebRTC, proxy'yi atlayarak gerçek yerel veya genel adresinizi açığa çıkarabilir. geoip etkin olduğunda Camoufox, WebRTC IPv4 adresini protokol düzeyinde çıkış IP'si olarak sahteler ve IPv6 DNS'i kapatır. WebRTC'yi engellemek yerine etkin ve sahtelenmiş halde bırakın, çünkü WebRTC'si hiç olmayan bir masaüstü Firefox alışılmadık bir görüntüdür.
  4. Geolocation API ↔ IP. Camoufox enlem ve boylamı GeoIP sorgusundan doldurur ve izin tercihini ayarlar; böylece navigator.permissions.query({name: "geolocation"}), verdiği konumla tutarlı biçimde "granted" döndürür. Konumu config içinde elle ayarlamayın. Kütüphane bunun "hedef konumunuz IP'nizle eşleşmezse tespite yol açabileceği" uyarısını yapıyor.
  5. İşletim sistemi ↔ fontlar ↔ GPU. Üreteç, gerçek trafiğin istatistiksel bir modelinden seçim yapar ve bir tutarlılık kontrolü, Apple M1 GPU'lu bir Windows user agent gibi imkânsız kombinasyonları reddeder. custom_fonts_only=True kullanmaktan kaçının ve webgl_config içinde yalnızca modelin o işletim sisteminde gördüğü çiftleri verin (diğer her şey ValueError fırlatır).
  6. User-Agent: dokunmayın. User-Agent veya navigator alanlarını elle ayarlamak, ağ ile JavaScript'in birbirini yalanlamasının en hızlı yoludur. Kütüphane her ikisine karşı da uyarıyor.
  7. IP türü ↔ iddia edilen cihaz. Bir hosting sağlayıcısının ASN'si üzerindeki tüketici masaüstü kimliği, parmak izi ne kadar iyi olursa olsun tutarsız bir eşleşmedir. Residential (veya ISP) IP'lerin maliyetini hak ettiği yer burasıdır. Bu sinyallerin sunucu tarafında nasıl birleştirildiğini tarayıcı parmak izi rehberimizde anlatıyoruz.
  8. Oturum başına tek kimlik. Çerezler, IP ve parmak izi ya birlikte değişmeli ya da hiç değişmemeli. Yeni bir IP ve yeni bir GPU ile geri dönen bir çerez, ne istikrarlı bir oturuma ne de temiz yeni bir oturuma benzer; insana en az benzeyen seçenek budur.

Camoufox, Patchright ve nodriver: hangisini seçmeli?

Önce motora göre seçin. Hedefiniz çoğunlukla Chrome trafiği görüyorsa ya da V8 davranışını kontrol ediyorsa bir Chromium aracı kullanın. JavaScript yaması yazmadan kapsamlı parmak izi rotasyonuna ihtiyacınız varsa ve Firefox trafiği sizin için sorun değilse Camoufox'u kullanın. Tablo, Ekim 2026 itibarıyla artı ve eksileri özetliyor.

CamoufoxPatchrightnodriver
MotorYamalı Firefox (Gecko + SpiderMonkey)Chromium / Chrome (yamasız tarayıcı)Kurulu Chrome, Chromium, Edge veya Brave
Kontrol protokolüJuggler (yamalı, sayfadan yalıtılmış)CDP; Runtime.enable yalıtılmış dünyalar ile atlanıyorDoğrudan CDP, WebDriver yok
APIPlaywright (Python, JS/TS)Playwright'ın birebir yerine geçen sürümü (Python, Node, topluluk .NET)Kendi async Python API'si
TLS parmak izinin kaynağıFirefox'un kendi NSS yığını, yani Firefox ClientHelloGerçek Chrome'un BoringSSL'i, özellikle channel="chrome" ileGerçek Chrome'un BoringSSL'i
Parmak izi rotasyonuYerleşik; her açılışta C++ düzeyinde üretiliyorYok. Enjeksiyonsuz gerçek Chrome öneriliyorYerleşik olarak yok
Bakım (Ekim 2026)Yeniden aktif. Eylül 2026'da kararlı 0.5.6, ancak Mart 2025 ile Ocak 2026 arasında kararlı sürüm yokPlaywright'ı takip ediyor. v1.63.0 sürücüsü Eylül 2026'da çıktıSon PyPI sürümü 0.50.3, Mayıs 2026
Tipik başarısızlık nedenleriFirefox'a özel sıkı inceleme, yalnızca Chrome'un geçebildiği motor kontrolleri, sağlayıcıların bulup kontrollerine eklediği parmak izi tutarsızlıklarıConsole API devre dışı, yalnızca Chromium, genel headless ve davranış sinyalleri hâlâ geçerliAna dünyadaki değerlendirme gözlemlenebilir, parmak izi yönetimi yok, API yüzeyi Playwright'tan dar

TLS satırı göründüğünden daha önemli. Üç araç da gerçek bir tarayıcı ağ yığını kullandığı için hiçbirinde Python'un requests kütüphanesi kendini Chrome diye tanıttığında ortaya çıkan uyuşmazlık yaşanmaz. Ancak Camoufox her zaman Firefox el sıkışması sunar. Bir sitenin modeli trafiğinin çoğunda Chrome biçimli TLS bekliyorsa, JA3/JA4'ün bu tür profillemede nasıl kullanıldığını TLS parmak izi rehberimizde okuyabilirsiniz.

Dürüst sınırlamalar

Camoufox tek bir işte iyidir: JavaScript yaması olmadan tutarlı ve dönen bir Firefox kimliği. Bunun da gerçek bedelleri var.

Firefox, trafiğin küçük bir dilimi

StatCounter, Eylül 2026'da Firefox'un dünya genelinde masaüstü gezinmenin yaklaşık %6,1'ini oluşturduğunu, Chrome'un ise yaklaşık %65'ini aldığını gösteriyor. Küçük bir kitleyi modellemek daha kolaydır ve içindeki her anormallik daha çok göze batar. Bazı siteler Chromium dışı tarayıcılara daha kolay doğrulama çıkarır. Hedefinizin bunu yapıp yapmadığını kendi trafiğinizle test etmeden bilemezsiniz.

Chrome taklidi yapamaz

README bunu açıkça söylüyor: Camoufox "Chromium parmak izlerinin enjeksiyonunu tam olarak desteklemiyor" ve bazı WAF'lar "sahtelenmesi imkânsız olan SpiderMonkey motor davranışını test ediyor". Site Chrome'da ısrar ediyorsa hiçbir Camoufox yapılandırması sizi oraya götüremez.

Bakım düzensiz oldu

Sürüm geçmişi bu boşluğu gösteriyor. Aradan önceki son kararlı derleme 15 Mart 2025'teki v135.0.1-beta.24. Projenin asıl geliştiricisi çalışmalara ara verdi ve ara sıra gelen topluluk commit'leri dışında Ocak 2026'daki Firefox 146 betasına kadar hiçbir şey yayımlanmadı. Ardından README, Clover Labs'i resmi bakımcı olarak açıkladı. O zamandan beri proje hızla ilerledi: Mayıs'ta Firefox 150 derlemesi, Temmuz'dan itibaren Firefox 152 kararlı derlemeleri, Eylül'de resmi bir TypeScript başlatıcısı ve ay sonunda Firefox 156 ön sürümleri. README'de hâlâ "Bu proje geliştirme aşamasındadır. Kararlı üretim kullanımına uygun olmayabilir" uyarısı duruyor. Sürümleri sabitleyin ve yükseltmeleri yaygınlaştırmadan önce test edin.

Parmak izleri hareketli bir hedef

Proje, anti-bot sağlayıcılarının "tek bir benzersiz tutarsızlık bulmak için Camoufox'u tekrar tekrar test ettiğini" ve ardından bunun için bir kontrol eklediğini açıkça belirtiyor. İnsansı imleç de "yeterince gelişmiş analizlerle yine de tespit edilebilir". C++ düzeyinde sahteleme bütün bir ipucu kategorisini ortadan kaldırır ama sizi kalıcı olarak tespit edilemez yapmaz.

Kaynak maliyeti

Proje, gereksiz bileşenlerden arındırılmış derlemesinin yaklaşık 200 MB ile çalıştığını ve standart Firefox'tan daha az bellek kullandığını iddia ediyor. Bu bizim değil, projenin verdiği rakam; üstüne sayfalarınız da ekleme yapacak. Yine de her kimlik için tam bir tarayıcı demek. Aynı parmak izini paylaşan çok sayıda context yerine eşzamanlı her oturum için bir tarayıcı planlayın, JavaScript gerektirmeyen uç noktalar için de düz HTTP istemcileri kullanın.

Camoufox'un çözmediği şeyler

  • IP itibarı. İşaretlenmiş bir residential IP yine işaretli kalır. Çıkışları kullanmadan önce test edin; örneğin ücretsiz proxy denetleyicimizle.
  • Hız limitleri ve davranış. Dakikada yüzlerce aynı yol, parmak izi ne olursa olsun otomasyon gibi görünür.
  • CAPTCHA'lar, oturum açma ve erişim kuralları. Camoufox size hiçbir veriyi toplama izni vermez. robots.txt dosyasına ve sitenin kullanım koşullarına uyun, yetkiniz olmayan kimlik doğrulamanın arkasındaki verilerden uzak durun ve kişisel verileri herkese açık görünse bile GDPR/CCPA kapsamında düzenlenen veri olarak ele alın.

Mantıklı bir geçiş planı

Tek bir ülke ve tek bir sabit oturumla başlayın. Her açılışta tutarlılık kontrolünün çıktısını kaydedin ve tek bir motora bağlanmadan önce aynı hedefte Patchright ile oluşturduğunuz bir referansla engellenme oranlarını karşılaştırın. Camoufox kazanırsa, tek bir tarayıcıyı oturumlar arasında paylaştırarak değil, yeni oturum kimlikleriyle tarayıcı ekleyerek ölçeklendirin. Açıkça Chrome'u tercih eden bir sitede kaybederse, yukarıdaki tablo bir sonraki adımı gösteriyor. Residential gateway üç araçla da aynı şekilde çalışır. Ülke kodları ve plan seçenekleri lokasyonlar ve residential proxy sayfalarında.

Sık sorulan sorular

Camoufox'ta proxy nasıl kullanılır?

Camoufox() veya AsyncCamoufox() çağrısına Playwright tarzı bir sözlük verin: proxy={'server': 'http://host:port', 'username': '...', 'password': '...'}. Saat dilimi, dil ayarı, konum ve WebRTC IP'sinin proxy'nin çıkış IP'sinden türetilmesi için geoip=True ekleyin (pip install "camoufox[geoip]" gerektirir).

Camoufox proxy ile kullanılırken neden geoip=True gerekiyor?

Bu ayar olmadan tarayıcının saat dilimi, dili ve konumu çıkış IP'sini değil varsayılan değerleri yansıtır; IP konumu ile tarayıcı saat dilimi arasındaki uyuşmazlık da klasik bir proxy ipucudur. Camoufox, geoip olmadan proxy kullanıldığında uyarı bile veriyor. Sorgu açılışta proxy üzerinden bir kez yapıldığı için sabit oturumla birlikte kullanın.

Camoufox 2026'da hâlâ geliştiriliyor mu?

Evet, ama arada bir boşluk var. Mart 2025 ile Ocak 2026 arasında kararlı sürüm çıkmadı; o zamandan beri, Clover Labs resmi bakımcı olarak açıklandıktan sonra Firefox 150 ve 152 tabanlı derlemeler, resmi bir npm başlatıcısı ve Eylül 2026 sonuna doğru Firefox 156 ön sürümleri yayımlandı. README hâlâ projeyi geliştirme aşamasında olarak tanımlıyor.

Camoufox mu Patchright mı: hangisi daha zor tespit edilir?

Her durumda geçerli bir kazanan yok. Patchright gerçek Chrome çalıştırır ve CDP sızıntılarından kaçınır; bu sayede baskın Chrome kitlesine karışır ve Firefox'un geçemediği motor kontrollerini geçer. Camoufox tam parmak izlerini JavaScript yaması olmadan C++ düzeyinde döndürür, ama her zaman masaüstü trafiğinin yaklaşık %6'sını oluşturan Firefox gibi görünür. İkisini de kendi hedefinizde test edin.

Camoufox Linux sunucuda headless çalışabilir mi?

Evet. headless=True, Camoufox'un normal bir pencere gibi görünmesi için yamaladığı Firefox headless modunu kullanır; headless="virtual" ise tarayıcıyı bir Xvfb sanal ekranı içinde headful çalıştırır. Sanal seçenek yalnızca Linux'ta çalışır ve xvfb paketinin kurulu olmasını gerektirir; headless mod tespit edilebilir hale gelebileceği için belgeler bunu öneriyor.

Başlamaya hazır mısınız?

195'den fazla ülkede residential, ISP ve mobil proxy'ler. Ücretsiz hesap oluşturun.

Ücretsiz hesap oluştur
← Bloga Dön