PRAW 8.0.3 ga requestor_kwargs orqali SOCKS ni taniydigan Requests sessiyasini bering:

import praw
import requests

session = requests.Session()
session.proxies.update({
    'http': 'socks5h://proxy.example:1080',
    'https': 'socks5h://proxy.example:1080',
})
reddit = praw.Reddit(
    client_id=client_id,
    client_secret=client_secret,
    user_agent=user_agent,
    requestor_kwargs={'session': session},
)

Ilovaning Reddit hisob ma’lumotlari va user agent dan foydalaning, so‘ngra shu reddit nusxasi orqali API chaqiruvlarini amalga oshiring. Uning requestor va sessiyasini ilovaning odatiy tozalashi orqali boshqaring.

Requests o‘zining SOCKS qo‘llab-quvvatlashini talab qiladi. socks5h manzil nomini hal qilishni proksiga topshiradi; socks5 uni mahalliy hal qiladi.

SOCKS5 proksi ro‘yxatidan ommaviy so‘nggi nuqta ushbu xaritadagi manzilni taqdim etishi mumkin. Avval Session() yarating va ko‘rsatilgandek uning proxies atributini yangilang. Uning konstruktorida proxies kalit so‘zi yo‘q.

Taqdim etilgan sessiya Requests ning muhit bilan integratsiyasini saqlaydi, shuning uchun meros qolgan proksi va chetlab o‘tish sozlamalari marshrut tanloviga ta’sir qilishi mumkin. To‘liq ilovaga tegishli marshrut uchun trust_env ni ko‘rib chiqing. Uni o‘chirish avval o‘sha muhitdan kelgan har qanday ishonch va autentifikatsiya kiritmalarini ham taqdim etishni talab qiladi.

O'xshash maqolalar