SOCKS usmeravanje u aiohttp-u sa aiohttp-socks
Koristite kompatibilan konektor koji podržava SOCKS umesto kopiranja starog aiohttp proxy primera sa uklonjenim klasama konektora.
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.