PRAW accetta una sessione Requests consapevole di SOCKS
Fornite al requestor di PRAW una sessione Requests configurata, usando socks5h quando il server SOCKS deve risolvere i nomi di destinazione di Reddit.
Date a PRAW 8.0.3 una sessione Requests consapevole di SOCKS tramite requestor_kwargs:
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},
)
Usate le credenziali Reddit e lo user agent dell’applicazione, poi effettuate le chiamate API tramite questa istanza reddit. Gestite il suo requestor e la sua sessione con la normale pulizia dell’applicazione.
Requests richiede il suo supporto SOCKS. socks5h delega la risoluzione del nome di destinazione al proxy; socks5 la risolve localmente.
Un endpoint pubblico dalla lista di proxy SOCKS5 può fornire l’indirizzo in questa mappa. Create prima Session() e aggiornate il suo attributo proxies come mostrato. Il suo costruttore non ha la parola chiave proxies.
La sessione fornita conserva l’integrazione di Requests con l’ambiente, quindi le impostazioni ereditate di proxy e bypass possono influenzare la scelta del percorso. Per un percorso interamente dell’applicazione, riesaminate trust_env. Disattivarlo richiede anche di fornire eventuali input di fiducia e autenticazione che prima provenivano da quell’ambiente.