如何在Windows上读取Python中的系统信息?
具体来说,与Linux上的/proc/meminfo类似,我如何使用Python从Windows读取系统信息(包括但不限于内存使用)。有一个类似的问题:如何在Windows上读取Python中的系统信息?,python,windows,operating-system,Python,Windows,Operating System,具体来说,与Linux上的/proc/meminfo类似,我如何使用Python从Windows读取系统信息(包括但不限于内存使用)。有一个类似的问题: 有很多答案告诉您如何在windows中实现这一点。您可以尝试使用我不久前创建的systeminfo.exe包装器,这有点非正统,但它似乎很容易做到这一点,而且没有太多代码 这应该可以在2000/XP/2003服务器上使用,也可以在Vista和Win7上使用,前提是它们随systeminfo.exe一起提供,并且位于路径上 import os,
有很多答案告诉您如何在windows中实现这一点。您可以尝试使用我不久前创建的systeminfo.exe包装器,这有点非正统,但它似乎很容易做到这一点,而且没有太多代码 这应该可以在2000/XP/2003服务器上使用,也可以在Vista和Win7上使用,前提是它们随systeminfo.exe一起提供,并且位于路径上
import os, re
def SysInfo():
values = {}
cache = os.popen2("SYSTEMINFO")
source = cache[1].read()
sysOpts = ["Host Name", "OS Name", "OS Version", "Product ID", "System Manufacturer", "System Model", "System type", "BIOS Version", "Domain", "Windows Directory", "Total Physical Memory", "Available Physical Memory", "Logon Server"]
for opt in sysOpts:
values[opt] = [item.strip() for item in re.findall("%s:\w*(.*?)\n" % (opt), source, re.IGNORECASE)][0]
return values
您可以轻松地将其余的数据字段附加到sysOpts变量中,不包括那些为其结果提供多行的字段,如CPU和NIC信息。regexp行的一个简单mod应该能够处理这个问题
享受吧 在Windows中,如果您想从SYSTEMINFO命令中获取类似的信息,可以使用 类似地,操作系统相关信息可以从
osinfo=c.Win32\u OperatingSystem()[0]
的完整列表和可能的副本
import wmi
c = wmi.WMI()
systeminfo = c.Win32_ComputerSystem()[0]
Manufacturer = systeminfo.Manufacturer
Model = systeminfo.Model