Reaaliaikaisten tietojen lähettäminen Pythonilla WebSocket

WebSocket on tekniikka, joka mahdollistaa tehokkaan reaaliaikaisen tiedonsiirron palvelimen ja asiakkaiden välillä kaksisuuntaisten yhteyksien kautta. Tässä on opas WebSocket reaaliaikaisten tietojen lähettämiseen palvelimelta Python-asiakkaille:

Asenna WebSocket kirjasto

Käytä websockets kirjastoa palvelimen ja asiakkaan toteuttamiseen WebSocket. Asenna tämä kirjasto pip:llä:

pip install websockets

Rakenna WebSocket palvelin

Palvelin WebSocket lähettää reaaliaikaista tietoa kaikille yhdistetyille asiakkaille.

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

Rakenna WebSocket asiakas

Asiakas WebSocket kuuntelee ja vastaanottaa reaaliaikaista dataa palvelimelta.

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

Suorita sovellus

Suorita WebSocket ensin palvelinkoodi ja sitten asiakaskoodi WebSocket. Näet reaaliaikaista dataa, joka lähetetään palvelimelta ja vastaanottaa jatkuvasti asiakasta.

Mukauta ja laajenna

Täältä voit mukauttaa ja laajentaa sovellustasi lisäämällä ominaisuuksia, kuten todennus, tietojen suodatus, tietojen muotoilu ja paljon muuta.

Johtopäätös:

Reaaliaikaisten tietojen lähettäminen WebSocket palvelimelta asiakkaille Pythonissa on tehokas tapa rakentaa reaaliaikaisia ​​viestintäsovelluksia ja kokea välittömästi päivitetyt tiedot.