使用gethostname

时间:2018-07-12 22:02:35

标签: python-3.x networking

我是python的新手,我试图ping我的办公室网络,并尝试获取要构建的库存系统的主机名。当我运行下面的脚本时,我获得了IP地址,并获得了联机或脱机状态,但没有获得正确的主机名。我只得到发送ping的计算机的主机名。我想我需要用一个字符串捕获它,但是不确定如何做到这一点。最终,只需按一下按钮,即可在GUI中运行。

import ipaddress
from subprocess import PIPE, Popen
import socket

network = ipaddress.ip_network('192.168.1.0/24')
for i in network.hosts():
        i = str(i)
        h = socket.gethostname()
        toping = Popen(['ping', '-c', '5', '-w', '100', i], stdout=PIPE)
        output = toping.communicate()[0]
        hostalive = toping.returncode
        if hostalive == 0:
            print(i)
            print(h)
            print("Is Online")
        else:
            print(i)
            print("Is Offline")

0 个答案:

没有答案