美文网首页技术人生
Python websocket 实践

Python websocket 实践

作者: 乐享书 | 来源:发表于2020-09-01 15:58 被阅读0次

正常http就够了,但是若是需要双向通信的话,websocket就会更加简单些。下面介绍python下的一些实践。

服务器端

选择 websocket-server,快速安装

pip install websocket-server

例子:

from websocket_server import WebsocketServer
# Called for every client connecting (after handshake)

def new_client(client, server):
    print("New client connected and was given id %d" % client['id'])
    server.send_message_to_all("Hey all, a new client has joined us")

# Called for every client disconnecting
def client_left(client, server):
    print("Client(%d) disconnected" % client['id'])

# Called when a client sends a message
def message_received(client, server, message):
    if len(message) > 200:
        message = message[:200]+'..'
    print("Client(%d) said: %s" % (client['id'], message))
    server.send_message(client, "got your message")

PORT = 9001
server = WebsocketServer(PORT, '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()

更多详情请访问: https://github.com/Pithikos/python-websocket-server

客户端

建议选择websocket-client,有多种创建方式,代码简洁。Github 2.3k star。可靠。
快速安装

pip install websocket-client

https://github.com/websocket-client/websocket-client

from websocket import create_connection
ws = create_connection("ws://10.26.137.129:9001/")
print("Sending 'Hello, World'...")
ws.send("Hello, World")
print("Sent")
print("Receiving...")
result = ws.recv()
print("Received '%s'" % result)
ws.close()

总结

对于python3.5以下,目前来看,当前的选择是更加实践。若是python3.5以上,可以试试

相关文章

  • Python websocket 实践

    正常http就够了,但是若是需要双向通信的话,websocket就会更加简单些。下面介绍python下的一些实践。...

  • Python WebSocket Client

    当WebSocket服务搭好之后,如何用Python调试呢? Python的WebSocket客户端有很多,这里推...

  • WebSocket实践

    WebSocket 1 WebSocket概述 1)WebSocket是一种网络通信协议,是HTML5开始提供的一...

  • 2019-01-17

    python websocket 应用总结 首先要了解websocket原理,知乎上有很多大神的答复,多看看就了解...

  • 2019-03-18

    python stomp订阅websocket 这两天被这个搞的头大,一般的订阅websocket都是没问题的,这...

  • php websocket实践

    前言 按理说,作为一个电子信息工程毕业的毕业生,websocket这种通信范畴的东西,即使是应用层的内容,我应该早...

  • websocket初探

    今天是想分享一下关于websocket在nodejs里面的相关实践。 websocket相关的知识大家在搜索引擎上...

  • webSocket最简单实践--最简单聊天功能

    在进行webSocket实践总结之前,怎么也得对webSocket有一个简单、大体的学习与了解。于是在进行实现一个...

  • python之websocket

    一、websocket WebSocket协议是基于TCP的一种新的协议。WebSocket最初在HTML5规范...

  • python版websocket

    背景 目前看到实现websocket的框架的- django的channels- flask- sanic好奇,用...

网友评论

    本文标题:Python websocket 实践

    本文链接:https://www.haomeiwen.com/subject/csuvsktx.html