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 для передачи данных в реальном времени с сервера клиентам — это мощный способ создания приложений для связи в реальном времени и получения мгновенно обновляемых данных.