0
我需要运行网络扫描以获取连接到网络的PC的计算机名称。 这是在这些系统上运行软件合规性扫描。Python代码扫描网络以获取计算机名称
我们需要系统的名称才能连接到其注册表以获取信息。
我们如何获取计算机名称,或者是他们以任何其他方式连接到网络中的计算机?
我需要运行网络扫描以获取连接到网络的PC的计算机名称。 这是在这些系统上运行软件合规性扫描。Python代码扫描网络以获取计算机名称
我们需要系统的名称才能连接到其注册表以获取信息。
我们如何获取计算机名称,或者是他们以任何其他方式连接到网络中的计算机?
你可能只使用一个IP地址,而不是一个名字。 Windows中需要计算机名称的系统调用通常也会接受数字地址。
例如这两个工作:
>>> import _winreg
>>> c = _winreg.ConnectRegistry("SOMEMACHINE", _winreg.HKEY_CLASSES_ROOT)
>>> c = _winreg.ConnectRegistry("10.10.40.9", _winreg.HKEY_CLASSES_ROOT)
非常特定的窗口黑客工作正常。
import subprocess
def get_host(target):
pro = subprocess.Popen(['ping','-a', '-n', '1', target], stdout = subprocess.PIPE, shell = True)
return pro.communicate()[0]
def parse_hostname(result):
return result.split()[1]
def get_range(network, start, finish):
while start != finish:
target = network + start
yield parse_hostname(get_host(target))
start += 1
“计算机名”是一个非常通用的术语。指定您需要的东西。 (如DNS名称,NetBIOS,WINS等) – 2011-03-15 08:28:38