Python websocket-client: conéctate a través de un proxy SOCKS5
Configura websocket-client con un tipo de proxy SOCKS documentado y deja que la biblioteca gestione la capa TLS de una conexión wss.
from websocket import create_connection
ws = create_connection(
"wss://service.example.net/socket",
http_proxy_host="127.0.0.1",
http_proxy_port=1080,
proxy_type="socks5h",
timeout=15,
)
Úsalo con websocket-client y su dependencia SOCKS documentada ya disponible. Para servicios WSS públicos en una ruta de proxy público permitida, la lista de proxies SOCKS5 proporciona candidatos para el host y el puerto del proxy. Aunque las claves de host/puerto se llaman http_proxy_*, proxy_type='socks5h' selecciona SOCKS5 con tratamiento del nombre de destino del lado del proxy.
El orden es negociación del proxy para obtener un flujo de destino, TLS verificado para WSS y después el handshake de WebSocket. El nombre de host del proxy no es la identidad TLS del sitio web. Desactivar la verificación no repara una etapa TLS mal ubicada.
Para un proxy autenticado, usa el argumento documentado de la versión instalada para ese tipo de proxy. Las cabeceras WebSocket de la aplicación no autentican al intermediario anterior.
Un socket proporcionado manualmente transfiere la responsabilidad de esas capas a la integración. Prefiere la interfaz de la biblioteca cuando sea adecuado y mantén websocket-client separado del paquete websockets versionado por separado.