如何在python中通过WebSocket接收数据

如何在python中通过WebSocket接收数据,python,websocket,Python,Websocket,我试图通过websockets以编程方式检索数据,但由于我对这方面的知识有限,所以失败了。在访问网站时,我注意到正在发送的websocket消息之一是~m~60~m{“m”:“quote_fast_symbols”,“p”:[“qs_p089; dyse9tcu”,“ASX:RIO”]} 我的代码如下: from websocket import create_connection import json ws = create_connection("wss://data.tradingv

我试图通过websockets以编程方式检索数据,但由于我对这方面的知识有限,所以失败了。在访问网站时,我注意到正在发送的websocket消息之一是
~m~60~m{“m”:“quote_fast_symbols”,“p”:[“qs_p089; dyse9tcu”,“ASX:RIO”]}

我的代码如下:

from websocket import create_connection
import json 

ws = create_connection("wss://data.tradingview.com/socket.io/websocket?from=chart%2Fg0l68xay%2F&date=2019_05_27-12_19")

ws.send(json.dumps({"m":"quote_fast_symbols","p"["qs_p089dyse9tcu","ASX:RIO"]}))
result =  ws.recv()
print(result)
ws.close()
打印结果:

~m~302~m~{"session_id":"<0.25981.2547>_nyc2-charts-3-webchart-5@nyc2-compute-3_x","timestamp":1558976872,"release":"registry:5000/tvbs_release/webchart:release_201-106","studies_metadata_hash":"888cd442d24cef23a176f3b4584ebf48285fc1cd","protocol":"json","javastudies":"javastudies-3.44_955","auth_scheme_vsn":2}
~m~302~m{“会话id”:“\u nyc2-charts-3-webchart”-5@nyc2-compute-3_x,“timestamp”:1558976872,“release”:“registry:5000/tvbs_release/webchart:release_201-106”,“studies_metadata_hash”:“888cd442d2cef23a176f3b4584ebf48285fc1cd”,“protocol”:“json”,“javastudies”:“javastudies-3.44_955”,“auth_scheme_vsn”:2}

无论我发出什么样的信息,我都会得到这个结果,几乎所有的信息都会被发送出去。我希望能收到的信息之一是力拓的价格信息。我是否应该包括其他步骤来获取这些数据?我知道可能需要某种形式的授权,但我不知道工作流程

你有没有找到解决办法?几周来,我一直在试图找出如何获取信息的方法。@tomoc4有很多其他网站都有这些交易数据,它们不使用web套接字,所以我干脆忽略了tradingview。我想我们最终使用了CMCMarkets如果你真的想让它在python中工作,我想你可以试着分析其他脚本是如何实现这一点的。我在github上看到了一些带有谷歌搜索的nodejs示例,谢谢。使用selenium和GeckoWebDriver与站点交互会获得websocket交付的数据吗?这就是我下一步打算尝试的。他们的指标非常有用,但很难掌握。不用担心。你还想得到什么其他指标?如果您使用selenium,那么您可以轻松获得图表中没有的所有数据。不确定,但对于WebSocket,我不认为你得到的原始形式会有多大用处,因为我认为它只是用于构建图表的数据,所以不会是直接的开盘价和收盘价。你有没有找到解决方案?几周来,我一直在试图找出如何获取信息的方法。@tomoc4有很多其他网站都有这些交易数据,它们不使用web套接字,所以我干脆忽略了tradingview。我想我们最终使用了CMCMarkets如果你真的想让它在python中工作,我想你可以试着分析其他脚本是如何实现这一点的。我在github上看到了一些带有谷歌搜索的nodejs示例,谢谢。使用selenium和GeckoWebDriver与站点交互会获得websocket交付的数据吗?这就是我下一步打算尝试的。他们的指标非常有用,但很难掌握。不用担心。你还想得到什么其他指标?如果您使用selenium,那么您可以轻松获得图表中没有的所有数据。不确定,但对于WebSocket,我不认为你得到的原始形式会有多大用处,因为我认为它只是用来构建图表的数据,所以不会是直接的开盘价和收盘价。