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,
)

websocket-client와 이미 사용 가능한 문서화된 SOCKS 의존성과 함께 사용하세요. 허용된 공용 프록시 경로에서 공용 WSS 서비스를 사용할 때 SOCKS5 프록시 목록이 프록시 호스트와 포트 후보를 제공합니다. 호스트/포트 키의 이름은 http_proxy_*이지만, proxy_type='socks5h'는 프록시 측 대상 이름 처리와 함께 SOCKS5를 선택합니다.

순서는 대상 스트림을 얻기 위한 프록시 협상, WSS용 검증된 TLS, 그다음 WebSocket 핸드셰이크입니다. 프록시 호스트 이름은 웹사이트의 TLS 신원이 아닙니다. 검증을 비활성화해도 잘못 놓인 TLS 단계가 복구되지 않습니다.

인증된 프록시의 경우 해당 프록시 유형에 대해 설치된 버전이 문서화한 인수를 사용하세요. 애플리케이션 WebSocket 헤더는 앞선 중개자를 인증하지 않습니다.

수동으로 제공한 소켓은 해당 계층에 대한 책임을 통합 구현으로 넘깁니다. 적합할 때는 라이브러리 인터페이스를 선호하고, websocket-client는 별도로 버전이 관리되는 websockets 패키지와 구분해 두세요.

관련 글