有没有办法使用Wireshark工具以编程方式导出文件?

时间:2010-03-09 19:25:50

标签: wireshark pcap

我正在尝试自动化使用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文件

3 个答案:

答案 0 :(得分:6)

我在debian系统上看了wireshark的依赖列表,我找到了 Tshark :这是wireshark的命令行版本。

这看起来很有意思,但我还没有看过这本手册,但是它确实更适合于脚本。

此外,我将继续关注此主题,并在我开始使用它时发布更多信息。

答案 1 :(得分:1)

我认为你应该做的是研究tshark。这是linux命令行版本,它将允许你所要求的(假设你有权访问它)。当然,这假设运行tshark然后手动查看输出是可以接受的。

答案 2 :(得分:0)

我之前从未尝试过自动化Wireshark,尽管我必须做一些类似于你描述的事情。我最终将少数人(因此容易出错)的步骤减少到一个自动化的步骤。

Autohotkey是我对许多重复的基于GUI的任务的解决方案。您可以非常轻松地编写按键回放脚本,该脚本将执行上述所有步骤。您可能必须让它自动为您增加文件名。您还可以使用其他自动化工具通过击键启动Autohotkey脚本。