首页 > 解决方案 > Binance python websocket - 没有响应

问题描述

我正在尝试使用 python-binance 并按照本教程运行 binance websocket api 的示例代码:https ://livedataframe.com/live-cryptocurrency-data-python-tutorial/

不幸的是我不能让它工作。websocket 只是不响应导致空终端没有打印出任何内容的结果。

我正在使用 python 3.7.8、PyCharm IDE、Windows 10

请帮忙,谢谢!

import time
from binance.client import Client # Import the Binance Client
from binance.websockets import BinanceSocketManager # Import the Binance Socket Manager

_API_KEY = "mykey"
_API_SECRET = "mykey"

client = Client(_API_KEY, _API_SECRET)

# Instantiate a BinanceSocketManager, passing in the client that you instantiated
bm = BinanceSocketManager(client)

# This is our callback function. For now, it just prints messages as they come.
def handle_message(msg):
    print(msg)

# Start trade socket with 'ETHBTC' and use handle_message to.. handle the message.
conn_key = bm.start_trade_socket('ETHBTC', handle_message)
# then start the socket manager
bm.start()

# let some data flow..
time.sleep(10)

# stop the socket manager
bm.stop_socket(conn_key)

此外,我可以运行此代码,但 websocket api 似乎对我不起作用。问候。

from binance.client import Client


_API_KEY = "key"
_API_SECRET = "key"

client = Client(_API_KEY, _API_SECRET)
btc_price = client.get_symbol_ticker(symbol="BTCUSDT")
# print full output (dictionary)
print(btc_price)

标签: pythonwebsocketbinance

解决方案


我已经删除了我无意中在此处发布的错误信息。不幸的是,帖子的其余部分不再像以前那样有意义:/

没有错误信息的帖子的其余部分:

为此,您可以使用 unicorn-binance-websocket-api:

pip install unicorn-binance-websocket-api

创建到 Binance 的 websocket 连接:

from unicorn_binance_websocket_api.unicorn_binance_websocket_api_manager import BinanceWebSocketApiManager

binance_websocket_api_manager = BinanceWebSocketApiManager(exchange="binance.com")
binance_com_websocket_api_manager.create_stream('arr', '!userData', api_key=binance_com_api_key, api_secret=binance_com_api_secret)

还有 4 行打印接收到的数据记录:

while True:
    oldest_stream_data_from_stream_buffer = binance_websocket_api_manager.pop_stream_data_from_stream_buffer()
    if oldest_stream_data_from_stream_buffer:
        print(oldest_stream_data_from_stream_buffer)

试试这个例子:https ://github.com/oliver-zehentleitner/unicorn-binance-websocket-api/blob/master/example_userdata_stream.py


推荐阅读