我正在尝试自动化我使用 WireShark 的重复手动过程:
1) 加载给定的 pcap 文件
2) 为给定协议应用一个简单的过滤器
3) 使用导出对话框将显示的数据包导出为 CSV 文件
4) 使用导出对话框以 XML PDML 格式导出显示的数据包。
这很乏味,并且需要人工参与大部分自动化的流程(包括分析文件以生成报告)。
有没有办法自动化 Wireshark,或者以某种方式访问用于导出的底层库?
更新:正如这里的几个人所指出的,TShark 原来是要走的路。我最终使用的确切命令行是:
tshark -r MyDataFile.pcap -T pdml -R MyProtocol > MyOutputFile.xml\
然后我使用基于事件的 XML 解析器(Python 的 expat)来解析生成的 2GB 文件