PRAW accepte une session Requests compatible SOCKS
Fournissez au requestor de PRAW une session Requests configurée, en utilisant socks5h lorsque le serveur SOCKS doit résoudre les noms de destination de Reddit.
Donnez à PRAW 8.0.3 une session Requests compatible SOCKS via 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},
)
Utilisez les identifiants Reddit et le user agent de l’application, puis effectuez les appels d’API via cette instance reddit. Gérez son requestor et sa session via le nettoyage habituel de l’application.
Requests a besoin de sa prise en charge de SOCKS. socks5h délègue la résolution du nom de destination au proxy ; socks5 la résout localement.
Un point de terminaison public de la liste de proxys SOCKS5 peut fournir l’adresse de cette table. Créez d’abord Session() et mettez à jour son attribut proxies comme indiqué. Son constructeur n’a pas de mot-clé proxies.
La session fournie conserve l’intégration de Requests à l’environnement, si bien que les réglages hérités de proxy et de contournement peuvent influencer le choix de la route. Pour une route entièrement maîtrisée par l’application, examinez trust_env. Le désactiver exige aussi de fournir les éventuels paramètres de confiance et d’authentification qui provenaient auparavant de cet environnement.