我已经从wireshark转储了一个数据包字节,并尝试使用python解压缩它。这是代码。
st="78DAE3E266E42CA92C4865616404000B0D01E8"
print(st)
d=zlib.decompressobj();
d.decompress(st)
和那个错误
Traceback (most recent call last):
File "C:\Documents and Settings\Administrator\Desktop\fu.py", line 6, in <module>
d.decompress(st)
zlib.error: Error -3 while decompressing: unknown compression method
我也尝试使用lzma
和gzip
(仅更改decompressobj参数),不起作用。
但是当我使用Flex AIR
解压缩字节就可以了。
AIR的解压缩结果为0a0b010974797065040101
如何在python中解决此问题?
我已经尝试解压缩压缩的字符串并压缩未压缩的字符串,但是我得到的值与您的值有很大不同。我非常怀疑该字符串实际上是压缩的字符串。
也许您应该先将字符串转换为十六进制
st="78DAE3E266E42CA92C4865616404000B0D01E8"
print(st)
hex_ = st.decode("hex")
d=zlib.decompressobj();
d.decompress(hex_)