1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54
| pip install websocket_client pip install websocket-server
from websocket_server import WebsocketServer
def new_client(client, server): print("新的客户端连接:%s" % client['id']) server.send_message_to_all("Hey all, a new client has joined us")
def client_left(client, server): print("客户端%s断开" % client['id'])
def message_received(client, server, message): print("Client(%d) said: %s" % (client['id'], message)) server.send_message_to_all(message)
if __name__ == '__main__': server = WebsocketServer(8000, host='127.0.0.1') server.set_fn_new_client(new_client) server.set_fn_client_left(client_left) server.set_fn_message_received(message_received) server.run_forever()
import websocket import threading, time from websocket import create_connection
ws = create_connection("ws://127.0.0.1:8000/")
def recv(): start = time.time() try: while ws.connected: result = str(ws.recv()) print("Recv:", result) except websocket.WebSocketConnectionClosedException: print("receive result end") print("耗时:%s" % (time.time() - start))
if __name__ == '__main__': t = threading.Thread(target=recv) t.start()
for i in range(5): print("Send: {}".format(i)) ws.send("Hello, {}!".format(i)) time.sleep(1)
ws.close()
|