无法连接币安 WebSocket api

时间:2021-04-03 21:49:26

标签: python websocket cryptocurrency binance

我正在尝试使用 python 连接到 binance websocket API。但它失败并出现以下错误:[Errno 8] nodename nor servname provided, or not known

import websocket
import sys
import pkg_resources

SOCKET = 'wss://stream.binance.com:9443/ws/ethusdt@kline_1m'

def on_open(ws):
    print('opened connection')

def on_close(ws):
    print('close connection')

def on_message(ws, message):
    print('received message')

def on_error(ws, error):
    print(error)


websocket.enableTrace(True)
ws = websocket.WebSocketApp(SOCKET, on_open=on_open, on_close=on_close, on_message=on_message, on_error=on_error)
ws.run_forever()

任何人都知道我应该如何解决这个问题。他们的 API 可靠吗? 提前致谢

1 个答案:

答案 0 :(得分:0)

Binanic api 会随着 API 的每次升级而不断变化。有几种方法可以解决这个问题。

首先检查 WSS 套接字是否处于活动状态...

<块引用>

SOCKET = 'wss://stream.binance.com:9443/ws/ethusdt@kline_1m'

然后

<块引用>

A:检查您是否可以通过他们的文档站点手动登录,因为那里有实时测试设施

如果不成功。

<块引用>

B:检查您的 API 密钥对于帐户交互是否仍然有效

C:查看当前使用的api版本

E:在 API 文档中,有现场示例,您可以测试 获取请求

D:他们的服务有时会限制您致电他们的频率 API 确保你在范围内

在上面,如果您已经测试了他们的 api 实时示例以获取请求,那么没有理由不应该工作。根据经验,在我在自己的代码中实现之前,我总是使用邮递员或失眠来检查请求,因为有时您在发布请求中的标头与他们的标头要求不匹配

Insomnia 要么 Postman

我个人总是先使用 insomnia 来确保请求有效,然后在我的代码中实现它以匹配格式。