بث البيانات في الوقت الحقيقي باستخدام بايثون WebSocket

WebSocket هي تقنية تتيح نقل البيانات بكفاءة في الوقت الفعلي بين الخادم والعملاء من خلال اتصالات ثنائية الاتجاه. فيما يلي دليل حول كيفية استخدامها WebSocket لبث البيانات في الوقت الفعلي من خادم إلى العملاء في Python:

قم بتثبيت WebSocket المكتبة

استخدم websockets المكتبة لتنفيذ WebSocket الخادم والعميل. قم بتثبيت هذه المكتبة باستخدام النقطة:

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 طريقة قوية لإنشاء تطبيقات اتصال في الوقت الفعلي وتجربة البيانات المحدثة على الفور.