aiohttp'de aiohttp-socks ile SOCKS yönlendirmesi
Kaldırılmış bağlayıcı sınıflarına sahip eski bir aiohttp proxy örneğini kopyalamak yerine SOCKS destekli uyumlu bir bağlayıcı kullanın.
aiohttp, HTTP proxy desteğini istek seçenekleri aracılığıyla belgeler. Bir SOCKS uç noktası, SOCKS konuşan bir uygulama gerektirir. Bir proxy URL'sinin bağlantı noktasını 1080 olarak değiştirmek bu uygulamayı sağlamaz.
Bir async işlevinin içinde, bakımı yapılan aiohttp-socks projesinin sağladığı bağlayıcıyı kullanın:
import aiohttp
from aiohttp_socks import ProxyConnector
connector = ProxyConnector.from_url('socks5://203.0.113.10:1080')
async with aiohttp.ClientSession(connector=connector) as session:
async with session.get('https://example.com/') as response:
body = await response.read()Bu, bağlayıcı paketinin zaten mevcut olduğunu ve uygulamadaki aiohttp sürümüyle uyumlu olduğunu varsayar. Uç nokta örnektir; SOCKS5 proxy listesi bağlayıcı URL'si için genel adaylar sunar. Gerçek iş yükü için zaman aşımı ve yanıt boyutu ilkesini yapılandırın.
Eski yanıtlar farklı paketlere ve bağlayıcı adlarına atıfta bulunur: aiosocks, aiosocksy ve aiohttp-socks birbiriyle değiştirilebilir içe aktarma yolları değildir. Gerçekten kullanılan paketin gereksinimlerini ve örneğini okuyun. Bir projenin sınıfını başka bir projenin bağımsız değişkenleriyle birleştirmek, herhangi bir proxy bağlantısı denenmeden önce başarısız olabilir.
Bağlayıcıyı ve oturum ömrünü bir arada tutun ve önemli olduğu yerlerde ana bilgisayar adı çözümleme davranışını denetleyin. Bir SOCKS URL'sini ilgisiz bir HTTP proxy seçeneğine geçirmek, bağlayıcının belgelenmiş yolunun yerini tutmaz.