You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							305 lines
						
					
					
						
							9.5 KiB
						
					
					
				
			
		
		
	
	
							305 lines
						
					
					
						
							9.5 KiB
						
					
					
				| Metadata-Version: 1.2
 | |
| Name: websocket-client
 | |
| Version: 0.55.0
 | |
| Summary: WebSocket client for Python. hybi13 is supported.
 | |
| Home-page: https://github.com/websocket-client/websocket-client.git
 | |
| Author: liris
 | |
| Author-email: liris.pp@gmail.com
 | |
| License: BSD
 | |
| Description: =================
 | |
|         websocket-client
 | |
|         =================
 | |
|         
 | |
|         websocket-client module  is WebSocket client for python. This provide the low level APIs for WebSocket. All APIs are the synchronous functions.
 | |
|         
 | |
|         websocket-client supports only hybi-13.
 | |
|         
 | |
|         
 | |
|         License
 | |
|         =======
 | |
|         
 | |
|          - BSD
 | |
|         
 | |
|         Installation
 | |
|         ============
 | |
|         
 | |
|         This module is tested on Python 2.7 and Python 3.4+.
 | |
|         
 | |
|         Type "python setup.py install" or "pip install websocket-client" to install.
 | |
|         
 | |
|         .. CAUTION::
 | |
|         
 | |
|           from v0.16.0, we can install by "pip install websocket-client" for Python 3.
 | |
|         
 | |
|         This module depends on
 | |
|         
 | |
|          - six
 | |
|          - backports.ssl_match_hostname for Python 2.x
 | |
|         
 | |
|         Performance
 | |
|         -----------
 | |
|         
 | |
|         The "send" and "validate_utf8" methods are too slow on pure python. If you want to get better performace, please install both numpy and wsaccel.
 | |
|         
 | |
|         
 | |
|         How about Python 3
 | |
|         ==================
 | |
|         
 | |
|         Now, we support Python 3 on single source code from version 0.14.0. Thanks, @battlemidget and @ralphbean.
 | |
|         
 | |
|         HTTP Proxy
 | |
|         ==========
 | |
|         
 | |
|         Support websocket access via http proxy.
 | |
|         The proxy server must allow "CONNECT" method to websocket port.
 | |
|         Default squid setting is "ALLOWED TO CONNECT ONLY HTTPS PORT".
 | |
|         
 | |
|         Current implementation of websocket-client is using "CONNECT" method via proxy.
 | |
|         
 | |
|         
 | |
|         example
 | |
|         
 | |
|         .. code:: python
 | |
|         
 | |
|             import websocket
 | |
|             ws = websocket.WebSocket()
 | |
|             ws.connect("ws://example.com/websocket", http_proxy_host="proxy_host_name", http_proxy_port=3128)
 | |
|         
 | |
|         
 | |
|         
 | |
|         Examples
 | |
|         ========
 | |
|         
 | |
|         Long-lived connection
 | |
|         ---------------------
 | |
|         This example is similar to how WebSocket code looks in browsers using JavaScript.
 | |
|         
 | |
|         .. code:: python
 | |
|         
 | |
|             import websocket
 | |
|             try:
 | |
|                 import thread
 | |
|             except ImportError:
 | |
|                 import _thread as thread
 | |
|             import time
 | |
|         
 | |
|             def on_message(ws, message):
 | |
|                 print(message)
 | |
|         
 | |
|             def on_error(ws, error):
 | |
|                 print(error)
 | |
|         
 | |
|             def on_close(ws):
 | |
|                 print("### closed ###")
 | |
|         
 | |
|             def on_open(ws):
 | |
|                 def run(*args):
 | |
|                     for i in range(3):
 | |
|                         time.sleep(1)
 | |
|                         ws.send("Hello %d" % i)
 | |
|                     time.sleep(1)
 | |
|                     ws.close()
 | |
|                     print("thread terminating...")
 | |
|                 thread.start_new_thread(run, ())
 | |
|         
 | |
|         
 | |
|             if __name__ == "__main__":
 | |
|                 websocket.enableTrace(True)
 | |
|                 ws = websocket.WebSocketApp("ws://echo.websocket.org/",
 | |
|                                           on_message = on_message,
 | |
|                                           on_error = on_error,
 | |
|                                           on_close = on_close)
 | |
|                 ws.on_open = on_open
 | |
|                 ws.run_forever()
 | |
|         
 | |
|         
 | |
|         
 | |
|         Short-lived one-off send-receive
 | |
|         --------------------------------
 | |
|         This is if you want to communicate a short message and disconnect immediately when done.
 | |
|         
 | |
|         .. code:: python
 | |
|         
 | |
|             from websocket import create_connection
 | |
|             ws = create_connection("ws://echo.websocket.org/")
 | |
|             print("Sending 'Hello, World'...")
 | |
|             ws.send("Hello, World")
 | |
|             print("Sent")
 | |
|             print("Receiving...")
 | |
|             result =  ws.recv()
 | |
|             print("Received '%s'" % result)
 | |
|             ws.close()
 | |
|         
 | |
|         
 | |
|         If you want to customize socket options, set sockopt.
 | |
|         
 | |
|         sockopt example
 | |
|         
 | |
|         .. code:: python
 | |
|         
 | |
|             from websocket import create_connection
 | |
|             ws = create_connection("ws://echo.websocket.org/",
 | |
|                                     sockopt=((socket.IPPROTO_TCP, socket.TCP_NODELAY),))
 | |
|         
 | |
|         
 | |
|         More advanced: Custom class
 | |
|         ---------------------------
 | |
|         You can also write your own class for the connection, if you want to handle the nitty-gritty details yourself.
 | |
|         
 | |
|         .. code:: python
 | |
|         
 | |
|             import socket
 | |
|             from websocket import create_connection, WebSocket
 | |
|             class MyWebSocket(WebSocket):
 | |
|                 def recv_frame(self):
 | |
|                     frame = super().recv_frame()
 | |
|                     print('yay! I got this frame: ', frame)
 | |
|                     return frame
 | |
|         
 | |
|             ws = create_connection("ws://echo.websocket.org/",
 | |
|                                     sockopt=((socket.IPPROTO_TCP, socket.TCP_NODELAY, 1),), class_=MyWebSocket)
 | |
|         
 | |
|         
 | |
|         FAQ
 | |
|         ===
 | |
|         
 | |
|         How to disable ssl cert verification?
 | |
|         -------------------------------------
 | |
|         
 | |
|         Please set sslopt to {"cert_reqs": ssl.CERT_NONE}.
 | |
|         
 | |
|         WebSocketApp sample
 | |
|         
 | |
|         .. code:: python
 | |
|         
 | |
|             ws = websocket.WebSocketApp("wss://echo.websocket.org")
 | |
|             ws.run_forever(sslopt={"cert_reqs": ssl.CERT_NONE})
 | |
|         
 | |
|         
 | |
|         create_connection sample
 | |
|         
 | |
|         .. code:: python
 | |
|         
 | |
|             ws = websocket.create_connection("wss://echo.websocket.org",
 | |
|               sslopt={"cert_reqs": ssl.CERT_NONE})
 | |
|         
 | |
|         
 | |
|         WebSocket sample
 | |
|         
 | |
|         .. code:: python
 | |
|         
 | |
|             ws = websocket.WebSocket(sslopt={"cert_reqs": ssl.CERT_NONE})
 | |
|             ws.connect("wss://echo.websocket.org")
 | |
|         
 | |
|         
 | |
|         How to disable hostname verification?
 | |
|         -------------------------------------
 | |
|         
 | |
|         Please set sslopt to {"check_hostname": False}.
 | |
|         (since v0.18.0)
 | |
|         
 | |
|         WebSocketApp sample
 | |
|         
 | |
|         .. code:: python
 | |
|         
 | |
|             ws = websocket.WebSocketApp("wss://echo.websocket.org")
 | |
|             ws.run_forever(sslopt={"check_hostname": False})
 | |
|         
 | |
|         
 | |
|         create_connection sample
 | |
|         
 | |
|         .. code:: python
 | |
|         
 | |
|             ws = websocket.create_connection("wss://echo.websocket.org",
 | |
|               sslopt={"check_hostname": False})
 | |
|         
 | |
|         
 | |
|         WebSocket sample
 | |
|         
 | |
|         .. code:: python
 | |
|         
 | |
|             ws = websocket.WebSocket(sslopt={"check_hostname": False})
 | |
|             ws.connect("wss://echo.websocket.org")
 | |
|         
 | |
|         
 | |
|         How to enable `SNI <http://en.wikipedia.org/wiki/Server_Name_Indication>`_?
 | |
|         ---------------------------------------------------------------------------
 | |
|         
 | |
|         SNI support is available for Python 2.7.9+ and 3.2+. It will be enabled automatically whenever possible.
 | |
|         
 | |
|         
 | |
|         Sub Protocols.
 | |
|         --------------
 | |
|         
 | |
|         The server needs to support sub protocols, please set the subprotocol like this.
 | |
|         
 | |
|         
 | |
|         Subprotocol sample
 | |
|         
 | |
|         .. code:: python
 | |
|         
 | |
|             ws = websocket.create_connection("ws://example.com/websocket", subprotocols=["binary", "base64"])
 | |
|         
 | |
|         
 | |
|         
 | |
|         wsdump.py
 | |
|         =========
 | |
|         
 | |
|         wsdump.py is simple WebSocket test(debug) tool.
 | |
|         
 | |
|         sample for echo.websocket.org::
 | |
|         
 | |
|           $ wsdump.py ws://echo.websocket.org/
 | |
|           Press Ctrl+C to quit
 | |
|           > Hello, WebSocket
 | |
|           < Hello, WebSocket
 | |
|           > How are you?
 | |
|           < How are you?
 | |
|         
 | |
|         
 | |
|         Usage
 | |
|         -----
 | |
|         
 | |
|         usage::
 | |
|         
 | |
|           wsdump.py [-h] [-v [VERBOSE]] ws_url
 | |
|         
 | |
|         
 | |
|         WebSocket Simple Dump Tool
 | |
|         
 | |
|         positional arguments:
 | |
|           ws_url                websocket url. ex. ws://echo.websocket.org/
 | |
|         
 | |
|         
 | |
|         optional arguments:
 | |
|           -h, --help                           show this help message and exit
 | |
|         WebSocketApp
 | |
|           -v VERBOSE, --verbose VERBOSE    set verbose mode. If set to 1, show opcode. If set to 2, enable to trace websocket module
 | |
|         
 | |
|         
 | |
|         example::
 | |
|         
 | |
|           $ wsdump.py ws://echo.websocket.org/
 | |
|           $ wsdump.py ws://echo.websocket.org/ -v
 | |
|           $ wsdump.py ws://echo.websocket.org/ -vv
 | |
|         
 | |
| Keywords: websockets
 | |
| Platform: UNKNOWN
 | |
| Classifier: Development Status :: 4 - Beta
 | |
| Classifier: License :: OSI Approved :: BSD License
 | |
| Classifier: Programming Language :: Python
 | |
| Classifier: Programming Language :: Python :: 2
 | |
| Classifier: Programming Language :: Python :: 2.6
 | |
| Classifier: Programming Language :: Python :: 2.7
 | |
| Classifier: Programming Language :: Python :: 3
 | |
| Classifier: Programming Language :: Python :: 3.4
 | |
| Classifier: Programming Language :: Python :: 3.5
 | |
| Classifier: Programming Language :: Python :: 3.6
 | |
| Classifier: Programming Language :: Python :: 3.7
 | |
| Classifier: Operating System :: MacOS :: MacOS X
 | |
| Classifier: Operating System :: POSIX
 | |
| Classifier: Operating System :: Microsoft :: Windows
 | |
| Classifier: Topic :: Internet
 | |
| Classifier: Topic :: Software Development :: Libraries :: Python Modules
 | |
| Classifier: Intended Audience :: Developers
 | |
| Requires-Python: >=2.6, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*
 | |
| 
 |