-1

我想从 websocket 读取数据。数据由 LoRa 节点发送到 LORIOT 服务。

这是网页的链接:

https://lora.service.itrm.de/apps/websocket.html?token=vgEAtgAAABRsb3JhLnNlcnZpY2UuaXRybS5kZfeagUUI80eb4B-eTvuwllM

你有什么想法?

4

1 回答 1

0

要连接到 Web 套接字,您可以使用 websocket-client 模块https://github.com/websocket-client/websocket-client 通过 pip 运行快速安装:pip install websocket-client

要获取 WebSocket 的实际链接,您可以在任何浏览器中使用开发人员工具并获取链接。对于您提供的链接,它是wss://lora.service.itrm.de/app?token=vgEAtgAAABRsb3JhLnNlcnZpY2UuaXRybS5kZfeagUUI80eb4B-eTvuwllM

基本上,您可以为任何令牌构建链接(我不知道您是如何获得这个的 :))。模式很明显,只需将令牌字符串添加到wss://lora.service.itrm.de/app?token=

我已经尝试连接到您提供的 WebSocket,它对 SSL 证书造成了一些麻烦,所以我做了一个快速的解决方法:

import websocket
import ssl
ws = websocket.WebSocket(sslopt={"cert_reqs": ssl.CERT_NONE})
ws.connect(url='wss://lora.service.itrm.de/app?token=vgEAtgAAABRsb3JhLnNlcnZpY2UuaXRybS5kZfeagUUI80eb4B-eTvuwllM')

通过使用 sslopt,我们基本上禁用了脚本的 SSL 验证。

接下来,您应该定义函数来处理消息、错误和连接关闭,具体取决于您要实现的目标(请参阅提供的 GitHub 链接上的示例和文档)。

于 2020-05-15T15:14:22.193 回答