Автоматическое переподключение к клиенту Websocket в Python - PullRequest
0 голосов
/ 30 сентября 2019

Я пытаюсь выполнить автоматическое повторное соединение с веб-сокетами и asyncio, однако кажется, что мой код не работает. Любые рекомендации, чтобы улучшить его?

Соединение websocket не удается несколько раз. Поэтому я пытаюсь поймать это в исключении.

import asyncio
import json
import websockets


async def test():
    async with websockets.connect('my_websocket_ip') as websvivo:
        while True:
            response = await websvivo.recv()
            response = json.loads(response)
            print(response)

if __name__ == "__main__":
    try:
        asyncio.run(test())
    except websockets.exceptions.ConnectionClosedError as e:
        asyncio.sleep(2)
        asyncio.run(test())

    except Exception as e:
        print(e)

Я получаю следующее сообщение об ошибке:

concurrent.futures._base.CancelledError

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...