aiohttp ichida aiohttp-socks bilan SOCKS marshrutlash
O'chirilgan konnektor sinflari bo'lgan eski aiohttp proxy namunasini ko'chirish o'rniga SOCKS tushunadigan mos konnektordan foydalaning.
aiohttp HTTP proxy qo'llab-quvvatlashini so'rov parametrlari orqali hujjatlashtiradi. SOCKS so'nggi nuqtasiga SOCKS gapiradigan amalga oshirish kerak. Proxy URL portini 1080 ga o'zgartirish bu amalga oshirishni bermaydi.
async funksiyasi ichida qo'llab-quvvatlanadigan aiohttp-socks loyihasi taqdim etadigan konnektordan foydalaning:
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 konnektor paketi allaqachon mavjud va ilovadagi aiohttp versiyasiga mos deb hisoblaydi. So'nggi nuqta misol uchun; SOCKS5 proxy ro'yxati konnektor URL uchun ommaviy nomzodlarni taklif qiladi. Haqiqiy ish yuki uchun taym-aut va javob hajmi siyosatini sozlang.
Eski javoblar turli paketlar va konnektor nomlariga ishora qiladi: aiosocks, aiosocksy va aiohttp-socks o'zaro almashtiriladigan import yo'llari emas. Haqiqatda ishlatiladigan paketning talablari va misolini o'qing. Bir loyihaning sinfini boshqasining argumentlari bilan birlashtirish har qanday proxy ulanishini sinashdan oldin ham muvaffaqiyatsiz bo'lishi mumkin.
Konnektor va sessiya umrini birga saqlang, muhim joyda xost nomini hal qilish xatti-harakatini tekshiring. SOCKS URL ni aloqasiz HTTP proxy parametriga berish konnektorning hujjatlashtirilgan yo'lini almashtirmaydi.