使用struct.unpack(格式,数据)解包数据,而不知道它的格式

时间:2017-07-28 20:31:58

标签: python network-programming

这是我的问题: (此代码用python编写)

我将信息从代理流式传输到端口。这使用UDP。所以在python中,我正在监听该端口并将信息放入变量“data”中。我现在想使用struct.unpack(format,data)方法解压缩这些数据。这是问题,我不知道这个传入数据的格式。有没有办法通过查看进入的位(“数据”变量中保存的当前位)生成可用于此方法的格式字符串?至少,我知道数据内部肯定会有protobuf文件和浮动文件。

这甚至可能吗?要在不知道格式之前解压缩吗?

这是一些代码(非常简单地绑定到端口收集数据):

sock = socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
sock.bind(("", port))
data, addr = sock.recvfrom(1024)
#I don't know what to put here : 
unpacked_data = struct.unpack("????", data)

非常感谢, -Michael

0 个答案:

没有答案