We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
why doesn't the websocket example work? I get this error: on_message() takes 2 positional arguments but 3 were given
import poloniex import logging from time import sleep
logging.basicConfig() poloniex.logger.setLevel(logging.DEBUG)
def on_volume(data): print(data)
sock = poloniex.PoloniexSocketed()
sock.startws(subscribe={'24hvolume': on_volume})
sleep(5)
sock.subscribe(chan='ticker', callback=print) sleep(1)
sock.unsubscribe(1002) sleep(4)
sock.stopws()
The text was updated successfully, but these errors were encountered:
Sorry for the late reply, on_volume in the example should be:
on_volume
def on_volume(*data): print(data) # or def on_volume(ws, data): # ws is a ref to the websocket app object print(data)
I was getting:
ERROR:websocket:error from callback <function on_volume at 0x00000194BBD111E0>: on_volume() takes 1 positional argument but 2 were given
But that isn't the error you are seeing... Is this still happening or is this possibly from a previous version?
Sorry, something went wrong.
我也遇到了这个问题 后来我是这么解决的。就是找到poloniex下面的__init__.py文件 打开后找到里面的 PoloniexSocketed类里面的on_message函数 然后把这个函数改一个地方 就是把
def on_message(self, data):
这行代码改成:
def on_message(self, aa, data):
这里的aa 可以换成任何的东西 主要目的是为了占个位置 其他的不用动 应该就不会再出错了
我觉得出现这个bug的原因是 WebSocketApp 的 _callback函数在调用到 on_message 这个函数的时候传了两个参数进去 一个是WebSocketApp这个类 一个是其他的参数 但是 on_message 事实上只接受传一个参数 就是 data 因为这个函数的 self 是默认传的 所以最后就出现了传参错误 所以我的做法就是在on_message 里面多放一个参数 作为占位 以此解决问题
No branches or pull requests
why doesn't the websocket example work? I get this error: on_message() takes 2 positional arguments but 3 were given
import poloniex
import logging
from time import sleep
logging.basicConfig()
poloniex.logger.setLevel(logging.DEBUG)
def on_volume(data):
print(data)
sock = poloniex.PoloniexSocketed()
sock.startws(subscribe={'24hvolume': on_volume})
sleep(5)
sock.subscribe(chan='ticker', callback=print)
sleep(1)
sock.unsubscribe(1002)
sleep(4)
sock.stopws()
The text was updated successfully, but these errors were encountered: