Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/314.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Windows上读取Python中的系统信息?_Python_Windows_Operating System - Fatal编程技术网

如何在Windows上读取Python中的系统信息?

如何在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,

具体来说,与Linux上的/proc/meminfo类似,我如何使用Python从Windows读取系统信息(包括但不限于内存使用)。

有一个类似的问题:


有很多答案告诉您如何在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