SOCKS рутирање у aiohttp-у са aiohttp-socks
Користите компатибилан конектор који подржава SOCKS уместо да копирате стари aiohttp proxy пример са уклоњеним класама конектора.
aiohttp документује подршку за HTTP прокси кроз своје опције захтева. SOCKS одредиште захтева имплементацију која говори SOCKS. Промена порта proxy URL-а на 1080 не даје ту имплементацију.
Унутар async функције користите конектор који пружа одржавани пројекат 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()Ово претпоставља да је пакет конектора већ доступан и компатибилан са верзијом aiohttp у апликацији. Одредиште је илустративно; листа SOCKS5 proxy сервера нуди јавне кандидате за URL конектора. Конфигуришите правила за временско ограничење и величину одговора за стварни посао.
Стари одговори помињу различите пакете и називе конектора: aiosocks, aiosocksy и aiohttp-socks нису замењиве путање увоза. Прочитајте захтеве и пример за пакет који се стварно користи. Комбиновање класе једног пројекта са аргументима другог може пропасти пре него што се уопште покуша proxy веза.
Држите конектор и трајање сесије заједно и проверите понашање разрешавања имена хостова где је то важно. Прослеђивање SOCKS URL-а неповезаној HTTP proxy опцији није замена за документовану путању конектора.