Как подписаться на канал API веб-приложений с помощью Python?

Я пытаюсь подписаться на публичный канал API BTCUSD на веб-сайте BTCUSD .

Вот код:

 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() 

One Solution collect form web for “Как подписаться на канал API веб-приложений с помощью Python?”

В документации говорится, что все сообщения кодируются JSON.

Кодирование сообщений

Каждое сообщение, отправленное и принимаемое через канал веб-канала Bitfinex, кодируется в формате JSON

Вам нужно импортировать библиотеку json , чтобы кодировать и декодировать ваши сообщения.

В документации упоминаются три общедоступных канала: book , trades и ticker .
Если вы хотите подписаться на канал, вам нужно отправить событие подписки.

Пример подписки на сделки LTCBTC, согласно документации :

 ws.send(json.dumps({ "event":"subscribe", "channel":"trades", "channel":"LTCBTC" }) 

Затем вам также нужно проанализировать входящие JSON-кодированные сообщения.

 result = ws.recv() result = json.loads(result) 
  • проблема с рукопожатием websocket
  • Не удается установить безопасное соединение с Websocket в Firefox.
  • Сервер WebSocket в Python: объект 'module' не имеет атрибута 'AF_INET'
  • Как я могу использовать этот пример websocket для работы с Flask?
  • Клиент javascript WebSocket и сервер python. Извлечение мусора на выходе
  • NodeJS - SocketIO через SSL с транспортом websocket
  • Торнадо отправит сообщение на мероприятие
  • WebSocket закрывается после 1000 сообщений
  • Python - лучший язык программирования в мире.