无法让币安线程网络套接字管理器显示价格流



我目前正在尝试从Binance流直播价格,但在运行代码后,我看到一个空白屏幕,即使程序正在运行。

代码如下:

import os
from binance.client import Client
import time
from binance import ThreadedWebsocketManager
from binance import ThreadedDepthCacheManager
api_key = os.environ.get('api_key')
api_secret = os.environ.get('api_secret')
client = Client(api_key, api_secret)
def main():
symbol = 'BTCUSDT'
twm = ThreadedWebsocketManager(api_key=api_key, api_secret=api_secret)

#Start is required to initialise its internal loop
twm.start()
def handle_socket_message(msg):
print(f"message type: {msg['e']}")
print(msg)
twm.start_kline_socket(callback=handle_socket_message, symbol=symbol)

twm.join()
if __name__ == "__main__":
main()

我最近遇到了同样的问题。

由于某些原因,我无法从threaddwebsocketmanager获得任何响应。

在寻找答案的时候,我遇到了你的问题,经过进一步的研究,我发现这是一个已知的问题。似乎threaddwebsocketmanager在Python3.10中不能很好地工作。我降级到Python3.9它工作得很好:)

from binance.streams import ThreadedWebsocketManager
from binance.streams import ThreadedDepthCacheManager
api_key = os.environ.get('api_key')
api_secret = os.environ.get('api_secret')
def main():
symbol = 'BTCUSDT'        

def handle_socket_message(msg):
print(f"message type: {msg['e']}")
print(msg)
twm = ThreadedWebsocketManager(api_key=api_key, api_secret=api_secret)
twm.start()
twm.start_kline_socket(callback=handle_socket_message, symbol=symbol)
twm.join()
if __name__ == "__main__":
main()
while True:
pass

最新更新