一、Python实现ws订阅服务

# 使用websocket订阅欧易公共频道中的 行情频道,以下是已知信息,写出Python代码
# 地址:"wss://wspap.okx.com:8443/ws/v5/public?brokerId=9999"
# 请求示例:
# {
# "op": "subscribe",
# "args": [{
# "channel": "tickers",
# "instId": "LTC-USD-200327"
# }]
# }
from datetime import datetime, timedelta
import asyncio
import json
import websockets async def subscribe_to_okx_channel():
uri="wss://wspap.okx.com:8443/ws/v5/business?brokerId=9999"
async with websockets.connect(uri) as websocket:
# 订阅请求示例
subscription_data = {
"op": "subscribe",
"args": [{
"channel": "candle15m",
"instId": "BTC-USDT"
}]
} # 向WebSocket服务器发送订阅请求
await websocket.send(json.dumps(subscription_data))
print(f"已向 {uri} candle15m 发送订阅请求") # 接收并处理服务器返回的数据
while True:
response = await websocket.recv()
print(f"收到的数据: {response}")
response = json.loads(response)
data = response.get('data')
if data:
time_str = data[0][0]
print('\033[32m' + '=============%s==============' % str(
datetime.fromtimestamp(int(time_str) / 1000)) + '\033[0m') # 运行异步函数
asyncio.get_event_loop().run_until_complete(subscribe_to_okx_channel())

数据解析:

订阅的URL:"wss://wspap.okx.com:8443/ws/v5/public?brokerId=9999"

       订阅参数:

       {
"op": "subscribe",
"args": [{
"channel": "candle15m",
"instId": "BTC-USDT"
}]
}

  

上面代码需要在访问外网的情况下才能运行  

Python实现ws订阅服务的更多相关文章

  1. 使用Python发送、订阅消息

    使用Python发送.订阅消息 使用插件 paho-mqtt 官方文档:http://shaocheng.li/post/blog/2017-05-23 Paho 是一个开源的 MQTT 客户端项目, ...

  2. python起的 simpleHTTPServer服务传输文件

    python起的 simpleHTTPServer服务传输文件 经同事的介绍,在Linux上传输文件的一种特别方便的方法: python -m SimpleHTTPServer [端口] 端口不填 默 ...

  3. RHEL 7 命令行注册和激活订阅服务

    导读 前一阵子,红帽推出了开发者免费使用订阅功能,只要注册成为红帽开发者就可以免费使用包括  RHEL7  在内的开发套件. 今天我们就来看一看怎么使用命令行来快速注册和激活订阅服务,以后就可以方便地 ...

  4. 用Python实现gmail邮箱服务,实现两个邮箱之间的绑定(上)

    一.本程序的起源 当我决定去中科院实习的时候,我给刘奎恩老师发了封邮件.我对此事是非常看重的,因此经常使用浏览器,打开gmail去查看刘老师有没有给我回复.因为gmail的新邮件推送的功能仅限于打开浏 ...

  5. 用Python实现gmail邮箱服务,实现两个邮箱之间的绑定(下)

    一.我的需求 我希望做成具有以下功能的软件:1. 间隔一段时间登录我的邮箱查看是否有未读邮件 如果不断的运行查看是否有新邮件确实没多大必要. 另外如果这个客户端登录我的邮箱,那么我可能就不能用浏览器登 ...

  6. 用Python实现gmail邮箱服务,实现两个邮箱之间的绑定(中)

    这篇博客,主要讲解用Python实现邮箱服务的几个需要学习的模块:E-mail Compotion and Decoding(邮件生成和解析).SMTP.POP.IMAP 如上篇博客所讲,我学习过程参 ...

  7. python实现编写windows服务

    使用python编写windows服务 最近测试服务器上经常发生磁盘空间不足,每次手动清除比较麻烦,所以写个windows服务定时清理下.中间也遇到过几个坑,一起记录下来. 1.python实现win ...

  8. python 远程调度进程服务与客户端

    python 远程调度进程服务与客户端 核心思想: 在本地或远程机器上创建一个进程,提供调度服务.使用了 APScheduler. 安装:APScheduler $ wget https://pypi ...

  9. 使用thrift实现订阅服务和发布服务

    使用thrift实现订阅服务和发布服务 服务:订阅服务 market_subscriber 和 发布服务 market_publisher功能:market_subscriber 能够向 market ...

  10. WebService 的CXF框架 WS独立服务之HelloWorld

    WebService:不同系统不同语言的数据交互, CXF主要分为两种服务方式: 1 )JAX-WS:传输数据, xml格式,基于SOAP协议(规范:规定了xml传递数据的编码规范) ; 2 )JAX ...

随机推荐

  1. 面试题32 - I. 从上到下打印二叉树

    地址:https://leetcode-cn.com/problems/cong-shang-dao-xia-da-yin-er-cha-shu-lcof/ <?php /** 从上到下打印出二 ...

  2. Cython与CUDA之Add

    技术背景 在前一篇文章中,我们介绍过使用Cython结合CUDA实现了一个Gather算子以及一个BatchGather算子.这里我们继续使用这一套方案,实现一个简单的求和函数,通过CUDA来计算数组 ...

  3. 解决kali虚拟机无法联网问题

    解决kali虚拟机无法联网问题 1.排查虚拟机网络连接-检查ipv4设置,确定好手动连接还是DHCP 如图一 2.排查虚拟网络编辑器-网卡配置,确定虚拟机直连外部网络是否为同一网口 如图二 3.排查虚 ...

  4. DeepSeek过时了?全网刷屏的Manus到底是什么?这样写申请秒过审核

    1.Manus是什么? Manus的官网地址:https://manus.im/ Manus是一个通用AI智能体,它连接思维与行动:它不仅思考,还能交付成果. 2. Manus能做什么? 最近几天,M ...

  5. 记一次QT的QSS多个控件设置同一个样式的问题

    文章目录 Qt样式表的格式问题 问题的引入 qss 选择器 问题所在 Reference Qt样式表的格式问题 问题的引入 最近在进行样式设计的时候,发现了一个问题,具体如下: 我是将所有样式写到.q ...

  6. rust学习笔记(6)

    模块 定义自己的模块,方便外部的调用 mod可以嵌套 可见程度 分为private和public 其中pub可以分为模块内可见和模块外可见 mod也遵循可见性的要求 // 一个名为 `my_mod` ...

  7. go context 子Goroutine超时控制

    context使用 Go语言第一形参通常都为context.Context类型,1. 传递上下文 2. 控制子Goroutine超时退出 3. 控制子Goroutine定时退出 package mai ...

  8. Error: Address already in use

    端口被某个进程占用 使用命令 lsof -i:端口号 然后看到进程号,直接杀掉进程就好 kill -9 进程号

  9. 【VMware VCF】解决 VCF 环境中组件用户密码过期问题。

    由于长时间没有启动 VCF 环境,现在在启动 SDDC Manager 组件后,UI 一直处于如下图所示的"初始化"状态.当时第一直觉就认为肯定是 VCF 环境组件的用户密码过期了 ...

  10. Docker启动关闭所有容器命令

    docker中 启动所有的容器命令 docker start $(docker ps -a | awk '{ print $1}' | tail -n +2) docker中 关闭所有的容器命令 do ...