pyshark引用TShark时:TShark not found的解决方法

pyshark

  • pyshark是python对Tshark调用的封装包。在Windows10上使用该库处理pcap包时,出现了错误如下:

pyshark.tshark.tshark.TSharkNotFoundException: TShark not found. Try adding its location to the configuration file. Searched these paths: [‘C:\Program Files\Wireshark\tshark.exe’, ‘C:\Program Files (x86)\Wireshark\tshark.exe’, ‘C:\Program Files\Wireshark\tshark.exe’]
在这里插入图片描述

  • 报错信息告诉我们,可能是因为找不到Tshark.exe的路径信息,因此解决方案如下:

1. 获得tshark.exe的安装路径

  • 首先检查自己是否安装了wireshark
  • 成功安装wireshark后,右键图标,点击属性。

pyshark引用TShark时:TShark not found的解决方法_第1张图片
获得了wireshark的安装目录,Tshark就在这个目录下。即"wireshark路径"/tshark.exe。

2. 简单的方法:

使用FileCapture函数时直接加入tshark的路径:

cap = pyshark.FileCapture("123.pcap", tshark_path= "E:\Wireshark64\Wireshark\\tshark.exe")

3. 一劳永逸的方法:找到pyshark库的配置文件,添加正确路径。

根据报错信息,找到函数get_process_path,发现get_process_path申明了配置变量如下:

  • from tshark.py:
    pyshark引用TShark时:TShark not found的解决方法_第2张图片
  • from config.py

pyshark引用TShark时:TShark not found的解决方法_第3张图片
get it!配置文件叫config.ini,保存在库的目录下。打开config.ini,注释掉tshark_path并重新配置如下:
pyshark引用TShark时:TShark not found的解决方法_第4张图片
搞定。

你可能感兴趣的:(wireshark,python,wireshark)