Scapy中的ARP无法正常工作,并出现错误在'all.py中找不到引用'ARP'

问题描述

只是想看看是否有一种方法可以解决我在pyCharm中收到的警告。

当前正在观看从头开始学习python和道德黑客:使用Scapy创建ARP请求。

使用时

import scapy.all as scapy 
arpRequest = scapy.ARP()

我收到警告(程序正在运行,但是警告当然很烦人)

警告:

Cannot find reference 'ARP' in 'all.py'

有什么想法吗?

解决方法

最佳实践是在 from scapy.layers.l2 import ARP,Ether 的样式中使用 here 中的 scapy 子模块。

但是,我确实发现这种方法很烦人,而且对初学者不太友好,因为您经常浏览文档。

我建议使用带有 pipenv 的 Visual Studio Code。根据我的经验,它与 Pycharm 非常相似,您可以毫无错误地使用 import scapy.all as scapy

,

有同样的问题,可以通过提供完整路径而不是使用scapy.all来解决。

尝试以下

从scapy.layers.l2导入ARP

从scapy.layers.l2导入以太

,

我用 Linux 终端运行它,它给了我同样的错误。然后我使用“python3 example.py”而不是只使用“python example.py”

然后代码工作。我认为这可能有助于解决您的问题。

#python #arp #scapy #arping