我正在编写一个网络发现工具,该工具应该打印出连接到我的网络的所有ip,但是由于某种原因,我的输出为“ None”,所以我对PyQt5相当了解,因此可能将scan()函数称为错误。我在没有PyQt5的情况下测试了脚本,并且可以正常工作。
def scan(self, ip):
arp_request = scapy.ARP(pdst=ip)
broadcast = scapy.Ether(dst="ff:ff:ff:ff:ff:ff")
arp_request_broadcast = broadcast/arp_request
answered_list = scapy.srp(arp_request_broadcast, timeout=1, verbose=False)[0]
self.lbloutput.setText("IP\t\t\tMac Address\n................................")
for element in answered_list:
self.lbloutput.setText(element[1].psrc + "\t\t" + element[1].hwsrc)
def btnclick(self):
results = self.scan(self.txtbox.text())
self.lbloutput.setText(str(results))
答案 0 :(得分:0)
scan()
不返回值,因此返回None
。
因此,当您致电results = self.scan(self.txtbox.text())
时,您将得到None
。