PRAW SOCKS-u dərk edən Requests sessiyasını qəbul edir
PRAW-ın requestor-una konfiqurasiya edilmiş Requests sessiyası verin; SOCKS serveri Reddit hədəf adlarını həll etməli olduqda socks5h istifadə edin.
PRAW 8.0.3-ə requestor_kwargs vasitəsilə SOCKS-u dərk edən Requests sessiyası verin:
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},
)
Tətbiqin Reddit etimad məlumatlarını və user agent-i istifadə edin, sonra bu reddit nüsxəsi vasitəsilə API çağırışları edin. Onun requestor və sessiyasını tətbiqin adi təmizləməsi ilə idarə edin.
Requests öz SOCKS dəstəyini tələb edir. socks5h hədəf adının həllini proxy-yə həvalə edir; socks5 isə yerli olaraq həll edir.
SOCKS5 proxy siyahısından ictimai endpoint bu xəritədəki ünvanı təmin edə bilər. Əvvəlcə Session() yaradın və göstərildiyi kimi onun proxies atributunu yeniləyin. Onun konstruktorunda proxies açar sözü yoxdur.
Verilən sessiya Requests-in mühit inteqrasiyasını saxlayır, buna görə miras alınan proxy və keçmə parametrləri marşrut seçiminə təsir edə bilər. Tamamilə tətbiqə məxsus marşrut üçün trust_env-i nəzərdən keçirin. Onu söndürmək əvvəllər həmin mühitdən gələn etimad və autentifikasiya girişlərinin verilməsini də tələb edir.