首页 > 解决方案 > 无法通过 Python 退出 Bitmex 测试网的 websocket 连接

问题描述

我正在尝试一些基本的东西来连接 Bitmex 测试网 websocket。我原本想在使用 market_depth() 函数接收到一些数据后,通过 exit() 函数关闭 WS 连接。但不知何故,exit() 函数不起作用,WS 只是不断地将数据推送给我。

但令人惊讶的是,当我在调试模式下运行时,exit() 函数实际上可以在我逐行运行脚本时关闭 WS。背后的原因是什么?感谢您的帮助。下面是我使用的代码。

ps 我是新来使用 REST 或 WS api,希望能以某种方式详细解释

from bitmex_websocket import BitMEXWebsocket
import logging


def run():
    logger = setup_logger()
    ws = BitMEXWebsocket(endpoint="https://testnet.bitmex.com/api/v1", symbol="XBTUSD",
                         api_key=None, api_secret=None)
    logger.info("Market depth: %s" % ws.market_depth())
    ws.exit()


def setup_logger():
    logger = logging.getLogger()
    logger.setLevel(logging.DEBUG)  # Change this to DEBUG if you want a lot more info
    ch = logging.StreamHandler()
    formatter = logging.Formatter("%(asctime)s - %(name)s - %(levelname)s - %(message)s")
    ch.setFormatter(formatter)
    logger.addHandler(ch)
    return logger


if __name__ == "__main__":
    run()

标签: pythonwebsocketcryptocurrencybitmex

解决方案


推荐阅读