0

Poloniex で新しい websocket APIを使用しようとしています。Wamp は現在非推奨であり、ボリュームなどのリアルタイムの公開データを簡単に呼び出す方法に関する情報はほとんどありません。

このソケットを実装しているように見えるこのコードを見つけましたが、bitstream に表示されます。コードを実行すると、ヘッダーが正常に呼び出され、応答ヘッダーも正常に取得され、データを送受信しているように見えますが、ソケットが閉じられます。ボリューム チャネルをサブスクライブし、ストリーミング データをデコードするにはどうすればよいですか?

import websocket
import threading
import time
import json
from threading import Thread


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

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

def on_close(ws):
    print("### closed ###")


def on_open(ws):
    print("ON OPEN")
    def run(*args):
        ws.send(json.dumps({'command':'subscribe','channel':1003}))
        while True:
            time.sleep(1)
        ws.close()
        print("thread terminating...")
    threading.Thread(target=run).start()


if __name__ == "__main__":
    websocket.enableTrace(True)
    ws = websocket.WebSocketApp("wss://api2.poloniex.com/",
                              on_message = on_message,
                              on_error = on_error,
                              on_close = on_close)

    ws.on_open = on_open
    ws.run_forever()


Am expecting a streaming connection to volume data but get this:

ON OPEN
send: b"\x81\xa9.)\x1d\xb8U\x0b~\xd7CD|\xd6J\x0b'\x98\x0cZh\xda]Jo\xd1LL?\x94\x0e\x0b~\xd0OGs\xddB\x0b'\x98\x1f\x19-\x8bS"
[1003,1]
unorderable types: float() > NoneType()
send: b'\x88\x82fWPGe\xbf'
### closed ###

Polo は私が購読していると思っているようです: ここに画像の説明を入力

4

1 に答える 1