我遇到了 websocket 问题。我从 https://github.com/Binance-docs/binance-futures-connector-python/tree/main/examples/websocket/futures 运行的任何示例都会给出以下错误 - “警告:root:WebSocket 连接已关闭:连接被不干净地关闭(对等点在没有先前的 WebSocket 关闭握手的情况下断开了 TCP 连接),代码:1006,干净:False,原因:连接被不干净地关闭了(对等点在没有先前的 WebSocket 关闭握手的情况下断开了 TCP 连接)”。
每当我尝试重新运行示例时,我都会收到错误“error.ReactorNotRestartable() 扭曲.互联网.错误.ReactorNotRestartable”。
我发现可以通过卸载然后重新安装扭曲库来避免此错误。但每次我想启动 websocket 时都必须重复重新安装。因为这不是一个可行的解决方案。这里有人可以帮我解决这个问题吗?关闭 websocket 连接的最合适方法是什么
ws_client = FuturesWebsocketClient(), ws_client.stop()
导致了这个问题。
Twisted 的反应堆目前无法重新启动。每个进程最多可以安装一个,并且最多可以运行一次。
您的 Jupyer 笔记本在单个长期运行的 Python 进程中运行,因此您只能进行一次尝试的运行反应堆交互。
我不知道“卸载并重新安装 Twisted”是什么意思,但一般的解决方案是安排您的代码,以便您只需要运行 Twisted 反应器一次(即,在完成之前不要停止它)你想做的一切)或向 Twisted 贡献可重新启动的反应堆。
或者,也许停止在 Jupyter Notebook 中运行代码,并在具有不同进程生命周期的环境中运行它。
请尝试使用最新版本,Websocket部分已重新设计。