问题描述
在python中用tshark抓包不使用线程正常运行
def analyze_pcap(pcap_path):
import pyshark
packets = pyshark.FileCapture(pcap_path, decode_as={'udp.port==xxx': 'xxx'}, display_filter='udp and ip')
for packet in packets:
print(packet)
analyze_pcap(pcap_path)
但是用线程运行就出现如下报错
t = threading.Thread(target=analyze_pcap,args=(pcap_path,))
t.start()
t.join()
解决方案
我原先的python版本是3.7.8,将python版本升级到3.8.9就正常运行不再报错了