如何获取 packet.tcp.payload 和 packet.http.data 作为字符串?
How to get packet.tcp.payload and packet.http.data as string?
这些属性的 return 值采用十六进制格式,由“:”分隔
例如:70:79:f6:2e:像这样。
当我试图将它解码为纯字符串(人类可读)时,它不起作用。使用什么编码?我尝试了各种不同的方法,如 codecs.decode()、binascii.unhexlify()、bytes.fromhex() 以及不同的编码 ASCII 和 UTF-8。没有任何效果,任何帮助表示赞赏。我正在使用 python 3.6
感谢您的提问!我相信您想要读取两个十六进制位置的块中的有效负载。您尝试的函数无法立即解析 :
定界符。像用 :
分隔符分割字符串,将它们的值转换为人类可读的字符,并将“列表”连接到字符串这样的东西应该可以解决问题。
hex_string = '70:79:f6:2e'
hex_split = hex_string.split(':')
hex_as_chars = map(lambda hex: chr(int(hex, 16)), hex_split)
human_readable = ''.join(hex_as_chars)
print(human_readable)
这是你想要的吗?
这些属性的 return 值采用十六进制格式,由“:”分隔 例如:70:79:f6:2e:像这样。 当我试图将它解码为纯字符串(人类可读)时,它不起作用。使用什么编码?我尝试了各种不同的方法,如 codecs.decode()、binascii.unhexlify()、bytes.fromhex() 以及不同的编码 ASCII 和 UTF-8。没有任何效果,任何帮助表示赞赏。我正在使用 python 3.6
感谢您的提问!我相信您想要读取两个十六进制位置的块中的有效负载。您尝试的函数无法立即解析 :
定界符。像用 :
分隔符分割字符串,将它们的值转换为人类可读的字符,并将“列表”连接到字符串这样的东西应该可以解决问题。
hex_string = '70:79:f6:2e'
hex_split = hex_string.split(':')
hex_as_chars = map(lambda hex: chr(int(hex, 16)), hex_split)
human_readable = ''.join(hex_as_chars)
print(human_readable)
这是你想要的吗?