2017-12-07 9 views
2

をCryptocompareののWebSocketに接続し、放出することはできません私はCryptocompare's WebSocketに接続しようとしている:wss://streamer.cryptocompare.com/socket.io/?transport=websocketが要求

私は、リアルタイムの価格を受信するために、こののWebSocketに接続する必要があります。私は、これは True

このアプローチはcryptocompareののWebSocketに私を接続しているが、私がメッセージを送信できませんを返すのWebSocketクライアントに

import websocket as ws 
socket = ws.create_connection('wss://streamer.cryptocompare.com/socket.io/?transport=websocket', timeout = 10) 
socket.connected 

を使用して

1に近づく次のことを試してみました。 CryptocompareのAPIからのガイドラインに従って、私が使用:

socket.send('SubAdd',{'subs': ['0~Poloniex~BTC~USD']})

をこの上記のコードは、このエラーを返します。

ValueError: Invalid OPCODE

APIに与えられたと同じのためのJavaScriptコードは次のとおりです。

socket.emit('SubAdd', { subs: ['0~Poloniex~BTC~USD'] });

私は何をしているのかわかりません。 socketIO-クライアントに使用

2 ngを

from requests.exceptions import ConnectionError 
from socketIO_client import SocketIO 

try: 
    socket = SocketIO('wss://streamer.cryptocompare.com/socket.io/?transport=websocket', wait_for_connection=False) 
    socket.wait() 
except ConnectionError: 
    print('The server is down. Try again later.') 

これは次のように出力できます:

ConnectionError: HTTPConnectionPool(host='wss', port=80): Max retries exceeded with url: //streamer.cryptocompare.com/socket.io/transport=websocket/socket.io/?EIO=3&transport=polling&t=1512683258219-0 (Caused by NewConnectionError('<requests.packages.urllib3.connection.HTTPConnection object at 0x7fbd0c273400>: Failed to establish a new connection: [Errno -2] Name or service not known',)) 

奇妙なことに、私は同じことを抱えている

答えて

0

を高く評価され、この問題に関するすべてのヘルプを問題。 emitはsocket.ioによって提供され、ネイティブのWebsocket実装はこれを実装していません。基本的にあなたが欠けているのは、サブスクリプションをセットアップする前にemitを呼び出す必要があるということです。ここで

from requests.exceptions import ConnectionError 
from socketIO_client import SocketIO 

try: 
    socket = SocketIO('wss://streamer.cryptocompare.com/socket.io/?transport=websocket', wait_for_connection=False) 
    socket.emit('SubAdd', { subs: ['0~Poloniex~BTC~USD'] }); 
    socket.wait() 
except ConnectionError: 
    print('The server is down. Try again later.') 

それは上記のコードはまだエラーが出ていますhttps://gist.github.com/jessemlay/ac856ebe015f408263df9a28787adf6f

+0

を助けている場合、角使って作業要点です。私はこれを試したが、私は接続エラーが常にあります。 –