Realtime gegevens uitzenden met Python WebSocket

WebSocket is een technologie die een efficiënte real-time gegevensoverdracht mogelijk maakt tussen een server en clients via bidirectionele verbindingen. Hier is een handleiding voor WebSocket het uitzenden van real-time gegevens van een server naar clients in Python:

Installeer de WebSocket bibliotheek

Gebruik de websockets bibliotheek om WebSocket server en client te implementeren. Installeer deze bibliotheek met behulp van pip:

pip install websockets

Bouw de WebSocket server

De WebSocket server stuurt real-time data naar alle aangesloten clients.

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()  

Bouw de WebSocket klant

De WebSocket client luistert en ontvangt real-time gegevens van de server.

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())  

Voer de toepassing uit

Voer eerst de WebSocket servercode uit en voer vervolgens de WebSocket clientcode uit. U ziet real-time gegevens die vanaf de server worden uitgezonden en continu door de client worden ontvangen.

Aanpassen en uitbreiden

Vanaf hier kunt u uw toepassing aanpassen en uitbreiden door functies toe te voegen zoals authenticatie, gegevensfiltering, gegevensopmaak en meer.

Conclusie:

Het gebruik WebSocket van het uitzenden van realtime gegevens van een server naar clients in Python is een krachtige manier om realtime communicatietoepassingen te bouwen en direct bijgewerkte gegevens te ervaren.