带有http代理的Python二进制ThreadedWebsocketManager

pu82cl6c  于 2022-11-11  发布在  Python
关注(0)|答案(1)|浏览(177)

我尝试使用ThreadedWebsocketManager在Windows PC上启动流。这台PC在HTTP代理后面。没有错误,但没有响应....我做错了什么吗?或者我忘记了什么?
注意:在这台电脑上我没有管理权限...
编辑:我试图在没有代理的PC中启动相同的流,它的工作。
编辑:我试图使用“客户端”来获取我的二进制帐户信息,设置代理环境变量和它的工作,它似乎只有“ThreadedWebsocketManager”不工作。
密码:

from binance import ThreadedWebsocketManager
import os

proxy = "http://<username>:<password>@<proxyurl>:<port>"
os.environ['http_proxy'] = proxy
os.environ['HTTP_PROXY'] = proxy
os.environ['https_proxy'] = proxy
os.environ['HTTPS_PROXY'] = proxy

api_key = '<my api key>'
api_secret = '<my secrect key>'

def main():
    symbol = 'BTCUSDT'

    twm = ThreadedWebsocketManager(api_key=api_key, api_secret=api_secret)
    # start is required to initialise its internal loop
    twm.start()

    def handle_socket_message(msg):
        print(f"message type: {msg['e']}")
        print(msg)

    twm.start_kline_socket(callback=handle_socket_message, symbol=symbol)
    twm.join()

if __name__ == "__main__":
   main()
dojqjjoe

dojqjjoe1#

很可能是biance使用的requests库在引擎盖下看不到os.environ更改。
请尝试使用文档中建议的方法之一,例如settings request_params


# ...

proxy =  "..."

proxies = {
    'http': proxy,
    'https': proxy,
}

# ...

def main():

    # ...

    # note the added request_params
    twm = ThreadedWebsocketManager(api_key=api_key, api_secret=api_secret, request_params={'proxies': proxies})

    # ...

# ...

相关问题