我在对websocket接口进行请求时,无法解析服务器发送的字段进行解析,在网上找了好久才实现

我在对websocket接口进行请求时,无法解析服务器发送的字段进行解析,在网上找了好久才实现

服务器发送字段是用JavaScript写的,他们用的在这个进行解包

/* pako压缩 */

function unzip(str){

return pako.ungzip(str);

}

/* pako解压 */

function zip(str){

var bytes = pako.gzip(str, { to: ‘String’ });

return bytes;

}

使用Python实现对服务器发送的字段进行解析

import base64
import gzip
from io import BytesIO

s = bytes(
“H4sIAAAAAAAAAKvmUlBQSs5PSVVSsFJQsjQwMDQwU9IBCeYWp4PFns1Z9Xz+0uebdz/fPf/llJkv1q+HyBcklmSAFSSWlmTogQiIeFFqcYFnCljGIiXRwMIwOU3XxNDCSNfEzNhE19LSKFk3JSnFwDjZLNnA0NhSiasWAPb7xfSEAAAA”,
encoding=“utf-8”
)

def zip_data(content):
z_buf = BytesIO()
z_file = gzip.GzipFile(mode=‘wb’, compresslevel=9, fileobj=z_buf)
z_file.write(content)
z_file.close()
return base64.b64encode(z_buf.getvalue())

def unzip_data(content):
compressed_data = base64.b64decode(content)
compressed_stream = BytesIO(compressed_data)
gzip_per = gzip.GzipFile(fileobj=compressed_stream)
data = gzip_per.read()
return data

s1 = unzip_data(s)
print(str(s1, encoding=“utf-8”))
s2 = zip_data(s1)
print(s2)
在这里插入图片描述

##打印的结果`

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

SzetoZeZe

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值