python websocket-server websocket_client

websocket-server

# 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(8131, "0.0.0.0")
    server.set_fn_new_client(new_client)
    server.set_fn_client_left(client_left)
    server.set_fn_message_received(message_received)
    server.run_forever()

websocket_client

# pip install websocket_client
import websocket
import threading
import time

file = True
num = 0
def on_message(ws, message):
    print(message)
    print('**********************')



def on_error(ws, error):
    print(error)


def on_close(ws):
    print('关闭')
    "### closed ###"


def on_open(ws):
    def run(*args):
        global num
        while num<5:
            time.sleep(1)
            num += 1
            print("{'message': 'num_%s'}" %num)
            ws.send('{"message": "num_%s"}')
        # ws.send('{"message": "num_%s"}')
        time.sleep(1)
        ws.close()
        print("thread close...")

    th = threading.Thread(target=run, args=())
    th.start()




if __name__ == "__main__":
    # websocket.enableTrace(True)
    ws = websocket.WebSocketApp("ws://127.0.0.1:8131/ws/status/555/",
                                on_message=on_message,
                                on_error=on_error,
                                on_close=on_close,
                                on_open=on_open)

 

 

 

 

 

  • 6
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值