我正在尝试连接到币安流,但是当我运行代码时,它输出:“关闭的连接”。我该怎么做才能加入直播?
import websocket
import json
socket = 'wss://fstream.binance.com/ws'
def on_open(ws):
subscribe_message = {"method": "SUBSCRIBE", "params":["btcusdt@trade"],"id": 1}
ws.send(json.dumps(subscribe_message))
def on_message(ws, message):
print("received a message")
print(json.loads(message))
def on_close(ws):
print("closed connection")
ws = websocket.WebSocketApp(socket, on_open=on_open, on_message=on_message, on_close=on_close)
ws.run_forever()
答案 0 :(得分:0)
欢迎来到stackoverflow
。
通过查看 wss://fstream.binance.com/ws
,我可以看出您正在尝试连接到 Futures API
。
API 文档中明确指出,任何原始流都在 /ws/<streamName>
您没有在 url 中指定 streamName
这就是错误的原因。
只需更改 url 以连接到正确的流,相同的代码应该适用于您:
ws = websocket.WebSocketApp(socket + '/btcusdt@trade', on_open=on_open, on_message=on_message, on_close=on_close)
如果有帮助,请将答案标记为已接受。