使用 Python 广播实时数据 WebSocket

WebSocket 是一种通过双向连接在服务器和客户端之间实现高效实时数据传输的技术。 WebSocket 以下是如何使用Python 将实时数据从服务器广播到客户端的 指南:

安装 WebSocket 库

使用该 websockets 库来实现 WebSocket 服务器和客户端。 使用 pip 安装此库:

pip install websockets

搭建 WebSocket 服务器

服务器 WebSocket 将实时数据发送到所有连接的客户端。

import asyncio  
import websockets  
  
# Function to send real-time data from the server  
async def send_real_time_data(websocket, path):  
    while True:  
        real_time_data = get_real_time_data()  # Get real-time data from a source  
        await websocket.send(real_time_data)  
        await asyncio.sleep(1)  # Send data every second  
  
start_server = websockets.serve(send_real_time_data, "localhost", 8765)  
asyncio.get_event_loop().run_until_complete(start_server)  
asyncio.get_event_loop().run_forever()  

构建 WebSocket 客户端

客户 WebSocket 端将监听并接收来自服务器的实时数据。

import asyncio  
import websockets  
  
async def receive_real_time_data():  
    async with websockets.connect("ws://localhost:8765") as websocket:  
        while True:  
            real_time_data = await websocket.recv()  
            print("Received real-time data:", real_time_data)  
  
asyncio.get_event_loop().run_until_complete(receive_real_time_data())  

运行应用程序

首先运行 WebSocket 服务器代码,然后运行 WebSocket 客户端代码。 您将看到从服务器广播并不断被客户端接收的实时数据。

定制和扩展

从这里,您可以通过添加身份验证、数据过滤、数据格式化等功能来自定义和扩展您的应用程序。

结论:

使用 WebSocket Python 将实时数据从服务器广播到客户端是构建实时通信应用程序并体验即时更新数据的强大方法。