diff --git a/binance/ws/websocket_api.py b/binance/ws/websocket_api.py index ae62e788..b44e09ad 100644 --- a/binance/ws/websocket_api.py +++ b/binance/ws/websocket_api.py @@ -1,7 +1,8 @@ -from typing import Dict, Optional +from typing import TYPE_CHECKING, Dict, Optional import asyncio -from websockets import WebSocketClientProtocol # type: ignore +if TYPE_CHECKING: + from websockets import WebSocketClientProtocol # type: ignore # noqa: F401 from .constants import WSListenerState from .reconnecting_websocket import ReconnectingWebsocket @@ -117,7 +118,7 @@ async def _ensure_ws_connection(self) -> None: try: if ( self.ws is None - or (isinstance(self.ws, WebSocketClientProtocol) and self.ws.closed) + or (hasattr(self.ws, "closed") and self.ws.closed) or self.ws_state != WSListenerState.STREAMING ): await self.connect()