websockets-proxy
Connect to websockets through a proxy server.
Decision gist · record as of 2026-08-14
Yes, if you need WebSocket proxy support in an async application. Install friction is low, the license is permissive, and there are no known vulnerabilities. The main caveat is dormancy—643 days without a release—so verify compatibility with your versions of websockets and python-socks before committing. The blocker (Proxy creation inside event loops) is a real constraint but documented and manageable.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Proxy objects must be created inside a running event loop (within an async function); creating them outside will raise RuntimeError about task attachment to a different loop.
- Low install friction with only two runtime dependencies (websockets and python-socks).
- Maintenance is dormant—last commit was 2024-11-09 and no releases in 643 days—but the package is marked Production/Stable and the repository remains active.
License · maintenance · safety
permissive license (permissive) — MIT License permits free use, modification, and distribution with minimal restrictions, making it suitable for both open-source and commercial projects.
last release 2024-11-09 (643 days) · last repo commit 2024-11-09 · 53 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 179,389 downloads/mo, #10,173 on PyPI
Alternatives
Verify before relying
pip install websockets_proxy
from websockets_proxy import Proxy, proxy_connect
proxy = Proxy.from_url("http://user:pass@proxy:port")
async with proxy_connect("wss://example.com", proxy=proxy) as ws:
msg = await ws.recv()- Whether dormancy (643 days since last release) affects compatibility with recent websockets or python-socks versions.
- Performance characteristics when routing through various proxy types (HTTP vs SOCKS4 vs SOCKS5).
- Whether the sock keyword argument restriction impacts real-world use cases.
What it is and what it does
websockets_proxy adds proxy support to the websockets package, allowing you to establish WebSocket connections through HTTP and SOCKS proxies. It wraps the standard websockets connect function with a proxy-aware alternative, delegating proxy handling to python-socks. The package is designed for async/await code and requires creating Proxy objects within an active event loop.
The main use case is routing WebSocket traffic through corporate proxies, anonymization proxies, or other intermediaries. It accepts the same arguments as the standard websockets connect constructor, with added proxy and proxy_conn_timeout parameters. The tradeoff is that you cannot use the sock keyword argument directly, since it is reserved for proxy connection.
Use it for
- Route WebSocket connections through corporate HTTP or SOCKS proxies in enterprise environments.
- Test WebSocket applications against proxy servers to verify proxy compatibility and behavior.
- Build async clients that need to tunnel WebSocket traffic through intermediary proxies for privacy or network segmentation.
- Connect to WebSocket APIs from behind restrictive network firewalls that require proxy routing.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you need WebSocket proxy support in an async application.
Install friction is low, the license is permissive, and there are no known vulnerabilities. The main caveat is dormancy—643 days without a release—so verify compatibility with your versions of websockets and python-socks before committing. The blocker (Proxy creation inside event loops) is a real constraint but documented and manageable.
Install
websockets-proxy on PyPI
Before you install
Low install friction with only two runtime dependencies (websockets and python-socks). Maintenance is dormant—last commit was 2024-11-09 and no releases in 643 days—but the package is marked Production/Stable and the repository remains active.
Proxy objects must be created inside a running event loop (within an async function); creating them outside will raise RuntimeError about task attachment to a different loop.
License in practice
MIT License permits free use, modification, and distribution with minimal restrictions, making it suitable for both open-source and commercial projects.
Quickstart
pip install websockets_proxy
from websockets_proxy import Proxy, proxy_connect
proxy = Proxy.from_url("http://user:pass@proxy:port")
async with proxy_connect("wss://example.com", proxy=proxy) as ws:
msg = await ws.recv()
Verify before relying
- Whether dormancy (643 days since last release) affects compatibility with recent websockets or python-socks versions.
- Performance characteristics when routing through various proxy types (HTTP vs SOCKS4 vs SOCKS5).
- Whether the sock keyword argument restriction impacts real-world use cases.
Package facts
| License | permissive license permissive |
| Python support | Supports the current Python release >=3.8 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 2 packagespython-sockswebsockets |
| Maintenance | Dormant 643 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 179,389 / month, #10,173 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 5 - Production/StableFramework :: AsyncIOIntended Audience :: DevelopersLicense :: OSI Approved :: MIT LicenseOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Topic :: Internet :: Proxy ServersTopic :: Internet :: WWW/HTTPTopic :: Software Development :: LibrariesTopic :: Software Development :: Libraries :: Python ModulesTyping :: Typed |
Evidence: websockets_proxy-0.1.3-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “websocket proxy client”
- websockets-proxyEnables WebSocket connections through HTTP and SOCKS proxies by…
- matter-ble-proxyA Python client library that bridges BLE operations to a remote…
- gripcontrolImplements the GRIP (Generic Real-time Interoperability Protocol)…
Give your agent the search over MCP, or paste the wish link into any chat.
More Libraries packages
urllib3 is an HTTP client library that provides thread-safe connection pooling, SSL/TLS verification, multipart file uploads, request retries, compression support, and proxy handling for Python applications.
Requests is a Python HTTP library that simplifies sending HTTP/1.1 requests with automatic handling of headers, authentication, cookies, and response parsing.
Pluggy provides a plugin system that lets you define hook specifications and register implementations to be called in sequence, enabling extensible Python applications without tight coupling.
Install it if you're building an extensible application or framework.
Provides parsing, arithmetic, and recurrence rule computation for dates and times, with timezone support and iCalendar RFC compliance.
Install it if you need to parse flexible date strings, compute relative dates, handle timezones, or work with recurrence rules—it's the de facto choice for these tasks.
Six provides utility functions to write Python code that runs on both Python 2.7 and Python 3.3+, smoothing over language differences between the two versions.
pytest is a testing framework that lets you write test functions using plain assert statements and automatically discovers and runs them, with detailed failure reporting.
See also httpx-ws · python-socks · websockify · aiohttp_socks · httpx-socks · bottle-websocket · django-grip · PySocks · hass-web-proxy-lib · websockets