繁体   English   中英

如何使用 Python 代码查找本地网络中的所有 IP 地址?

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM