PRAW acepta una sesión de Requests con SOCKS
Proporcione al requestor de PRAW una sesión de Requests configurada, usando socks5h cuando el servidor SOCKS deba resolver los nombres de destino de Reddit.
De a PRAW 8.0.3 una sesión de Requests con SOCKS mediante 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},
)
Use las credenciales de Reddit y el user agent de la aplicación y, después, realice llamadas a la API a través de esta instancia reddit. Gestione su requestor y su sesión mediante la limpieza habitual de la aplicación.
Requests necesita su compatibilidad con SOCKS. socks5h delega la resolución del nombre de destino al proxy; socks5 la resuelve localmente.
Un punto de conexión público de la lista de proxies SOCKS5 puede aportar la dirección de este mapa. Cree primero Session() y actualice su atributo proxies como se muestra. Su constructor no tiene la palabra clave proxies.
La sesión proporcionada conserva la integración de Requests con el entorno, así que los ajustes heredados de proxy y omisión pueden afectar la selección de ruta. Para una ruta totalmente propia de la aplicación, revise trust_env. Desactivarlo también exige aportar cualquier dato de confianza y autenticación que antes proviniera de ese entorno.