[英]How can i find all IP addresses in local network using Python codes?
我想在 Python 控制台上打印本地网络的所有 IP 地址。 有办法吗?
我已经为这个问题写了一个代码,但它太慢了,我需要更快的代码。
import subprocess
ip="192.168.1."
list=[]
for i in range(1,255,1):
ipn=ip+str(i)
s = subprocess.check_output(["ping",ipn])
if ("TTL" in str(s)):
list.append(ipn)
print("ip list")
for j in list:
print(j)
您可以使用 subprocess 和arp -a
:
import subprocess
cmd = subprocess.run(["arp", "-a"], capture_output=True)
a = str(cmd).split(",")
b = a[3].replace("stdout=b'", "").replace("\\n", "\n")
#print(b)
c=b.split("on wlan0")
for x in c:
print("Device: ",x)
您可能需要修改 split 语句,这取决于您的控制台使用的语言(语言是指母语,例如英语、法语)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.