WebSocket är en teknik som möjliggör effektiv dataöverföring i realtid mellan en server och klienter genom dubbelriktade anslutningar. Här är en guide om hur du använder WebSocket för att sända realtidsdata från en server till klienter i Python:
Installera WebSocket biblioteket
Använd websockets
biblioteket för att implementera WebSocket server och klient. Installera det här biblioteket med pip:
pip install websockets
Bygg WebSocket servern
Servern WebSocket skickar realtidsdata till alla anslutna klienter.
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()
Bygg WebSocket kunden
Klienten WebSocket kommer att lyssna och ta emot realtidsdata från servern.
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())
Kör applikationen
Kör WebSocket serverkoden först, kör sedan WebSocket klientkoden. Du kommer att se realtidsdata som sänds från servern och tas emot kontinuerligt av klienten.
Anpassa och utöka
Härifrån kan du anpassa och utöka din applikation genom att lägga till funktioner som autentisering, datafiltrering, dataformatering och mer.
Slutsats:
Att använda WebSocket för att sända realtidsdata från en server till klienter i Python är ett kraftfullt sätt att bygga realtidskommunikationsapplikationer och uppleva omedelbart uppdaterad data.