Scapy窗口 – 嗅探() – 'log_runtime'未定义

我安装了python 2.7和scapy以下支持的程序:pywin32,WinPcap,Pypcap和libdnet。 我觉得说我的操作系统是Windows 7是很重要的。

当我使用函数嗅探,它似乎引发一个错误: http : //prntscr.com/dbd79a 。 我试过另一个scapy的函数和类作为IP和sendp,它工作正常,问题只是嗅探。

我已经从许多安装链接尝试了几个版本的scapy,没有任何改变。

您的问题是scapy 2.3.3版本中的错误(上传于18/10/16)。 它可能会在下一个版本中被修复,同时你可以通过做安装以前的版本

pip install scapy==2.3.2 

我检查了提交,这个bug并没有在那个版本。 但是我还没有对它进行测试,所以它可能包含其他错误(因为2.3.3必须改变一些东西,至少我希望它做到了),所以如果你由于某种原因必须使用2.3.3,你可以像下面这样修补它:

 from scapy.arch.windows import compatibility from scapy.all import log_runtime, MTU, ETH_P_ALL, PcapTimeoutElapsed, plist compatibility.log_runtime = log_runtime compatibility.MTU = MTU compatibility.PcapTimeoutElapsed = PcapTimeoutElapsed compatibility.ETH_P_ALL = ETH_P_ALL compatibility.plist = plist compatibility.sniff(1) # call the sniff function however you like