Dizüstü bilgisayarı ve barındırılan süreci iki farklı katmanda karşılaştırın:

KatmanSoru
Content-Encodingİstemci dönen gzip/deflate/Brotli baytlarını açabiliyor mu?
CharsetAçılmış baytlar nasıl metne dönüşür?

Requests genellikle gzip/deflate işler; Brotli kurulu ve desteklenen bir kitaplık gerektirir. Elle kopyalanmış bir Accept-Encoding, bu ortam çözemese bile br duyurabilir. UTF-8 metin seçimi Brotliyi açmaz.

Müzakere bilerek sınırlandığında:

response = session.get(
    url,
    proxies={"https": "http://proxy.example:8080"},
    headers={"Accept-Encoding": "gzip, deflate"},
    timeout=30,
)
response.raise_for_status()

Mevcut Session, HTTPS URL ve gereken başlıklar/kimlik doğrulama kullanın. Her iki makinede giden Accept-Encoding, gelen Content-Encoding ve paket desteğini karşılaştırın; dönüştüren bir aracı eski üst verileri de sağlayabilir. Ayrı bir herkese açık sayfa karşılaştırması, herkese açık aracılara izin verilen yerlerde proxy URLsi için HTTP proxy listesi kullanabilir; ancak devralınan proxy kimlik bilgileri, kopyalanmış hesap başlıkları veya özel gövde verileri olmadan.

Aksi halde normal istemci müzakereyi tercih edin. Requestsin kullanışlı content/text arayüzleri desteklenen kodlamayı çözer, bu yüzden başlık adını söylüyor diye çıktılarını yeniden açmayın.

İlgili makaleler