Я пытаюсь подписаться на общедоступный канал API веб-приложений Bitfinex.com BTCUSD
.Как подписаться на канал API веб-приложений с помощью Python?
Вот код:
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()
Я считаю, что ws.send("BTCUSD")
поддерживает общественный канал? Я получаю сообщение назад, я думаю, подтверждает подписку ({"event":"info","version":1}
, но после этого я не получаю поток данных. Что мне не хватает?
Обновление: Вот код, который, наконец, работал.
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()
Если вы работаете с API, сначала прочтите документы. http://docs.bitfinex.com/#subscribe-to-channels –
Я прочитал эти документы. И насколько я могу судить, мне не хватает правильного кода для подписки на канал. Однако, просматривая всю документацию, https://pypi.python.org/pypi/websocket-client/, затем отправьте («LTCBTC») правильный способ подписаться. Что я делаю не так? – Emily