aiohttp dokumentuje podršku za HTTP proxy kroz svoje opcije zahteva. SOCKS odredište zahteva implementaciju koja govori SOCKS. Promena porta proxy URL-a na 1080 ne daje tu implementaciju.

Unutar async funkcije koristite konektor koji pruža održavani projekat aiohttp-socks:

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()

Ovo pretpostavlja da je paket konektora već dostupan i kompatibilan sa verzijom aiohttp u aplikaciji. Odredište je ilustrativno; lista SOCKS5 proxyja nudi javne kandidate za URL konektora. Konfigurišite pravila za vremensko ograničenje i veličinu odgovora za stvarni posao.

Stari odgovori pominju različite pakete i nazive konektora: aiosocks, aiosocksy i aiohttp-socks nisu zamenljive putanje uvoza. Pročitajte zahteve i primer za paket koji se stvarno koristi. Kombinovanje klase jednog projekta sa argumentima drugog može propasti pre nego što se uopšte pokuša proxy veza.

Držite konektor i trajanje sesije zajedno i proverite ponašanje razrešavanja imena hostova gde je to važno. Prosleđivanje SOCKS URL-a nepovezanoj HTTP proxy opciji nije zamena za dokumentovanu putanju konektora.

Povezani članci