Wie Sie Sie Abonnieren, Um Websocket-API-Kanal Mit Python?

Ich versuche zu abonnieren Bitfinex.com mit der websocket-API öffentlichen Kanal BTCUSD.

Hier der code:

from websocket import create_connection
ws = create_connection("wss://api2.bitfinex.com:3000/ws")
ws.connect("wss://api2.bitfinex.com:3000/ws")
ws.send("LTCBTC")
while True:

    result = ws.recv()
    print ("Received '%s'" % result)

ws.close()

Ich glaube ws.send("BTCUSD") ist, was abonniert den öffentlichen Kanal? Ich bekomme eine Nachricht zurück, die ich denke, ist die Bestätigung der Abonnement -({"event":"info","version":1}, aber ich habe nicht den Datenstrom danach. Was bin ich?

Update: Hier ist der code endlich funktioniert.

import json

from websocket import create_connection
ws = create_connection("wss://api2.bitfinex.com:3000/ws")
#ws.connect("wss://api2.bitfinex.com:3000/ws")
ws.send(json.dumps({
    "event": "subscribe",
    "channel": "book",
    "pair": "BTCUSD",
    "prec": "P0"
}))


while True:
    result = ws.recv()
    result = json.loads(result)
    print ("Received '%s'" % result)

ws.close()
  • Wenn Sie arbeiten mit einer API, Lesen Sie in der Dokumentation erste. docs.bitfinex.com/#subscribe-to-channels
  • Ich habe gründlich Lesen Sie die Dokumente. Und soweit ich das beurteilen kann, mir fehlt der richtige code zum abonnieren des Kanals. Dennoch gehen durch die Dokumentation hier pypi.python.org/pypi/websocket-client dann send('LTCBTC') ist die richtige Art und Weise zu abonnieren. Was mache ich falsch?
InformationsquelleAutor Emily | 2015-11-17
Schreibe einen Kommentar