Python的hexdump
功能通常是通过内置的binascii
模块实现的
import binascii data = https://www.yisu.com/ask/b"Hello, World!" # 使用 hexdump 格式输出 hex_dump = binascii.hexlify(data).decode('utf-8') print(hex_dump) # 使用 -C 选项以更易读的格式输出 hex_dump_c = binascii.hexlify(data).decode('utf-8') print(hex_dump_c)
如果你想要一个更完整的解决方案,可以考虑使用第三方库,如pyshark
或hexpy
。这些库提供了更多的功能和更好的可读性。例如,使用pyshark
可以轻松地解析和显示网络数据包的十六进制表示:
pip install pyshark
import pyshark # 捕获网络数据包 capture = pyshark.LiveCapture(interface='eth0') for packet in capture: # 获取数据包的有效载荷 payload = packet.payload # 使用 hexdump 格式输出 hex_dump = payload.show(dump=True) print(hex_dump)
请注意,pyshark
需要安装Wireshark,并且可能需要管理员权限才能捕获数据包。