Python用WMI模块获取Windows系统的硬件信息:硬盘分区、使用情况,内存大小,CPU型号,当前运行的进程,自启动程序及位置,系统的版本等信息。
本文实例讲述了python使用wmi模块获取windows下的系统信息 监控系统
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
|
#!/usr/bin/env python # -*- coding: utf- -*- #http://www.cnblogs.com/liu-ke/ import wmi import os import sys import platform import time def sys_version(): c = wmi.WMI () #获取操作系统版本 for sys in c.Win_OperatingSystem(): print "Version:%s" % sys.Caption.encode( "UTF" ), "Vernum:%s" % sys.BuildNumber print sys.OSArchitecture.encode( "UTF" ) #系统是位还是位的 print sys.NumberOfProcesses #当前系统运行的进程总数 def cpu_mem(): c = wmi.WMI () #CPU类型和内存 for processor in c.Win_Processor(): #print "Processor ID: %s" % processor.DeviceID print "Process Name: %s" % processor.Name.strip() for Memory in c.Win_PhysicalMemory(): print "Memory Capacity: %.fMB" % ( int (Memory.Capacity) / ) def disk(): c = wmi.WMI () #获取硬盘分区 for physical_disk in c.Win_DiskDrive (): for partition in physical_disk.associators ( "Win_DiskDriveToDiskPartition" ): for logical_disk in partition.associators ( "Win_LogicalDiskToPartition" ): print physical_disk.Caption.encode( "UTF" ), partition.Caption.encode( "UTF" ), logical_disk.Caption #获取硬盘使用百分情况 for disk in c.Win_LogicalDisk (DriveType = ): print disk.Caption, "%.f%% free" % (. * long (disk.FreeSpace) / long (disk.Size)) def network(): c = wmi.WMI () #获取MAC和IP地址 for interface in c.Win_NetworkAdapterConfiguration (IPEnabled = ): print "MAC: %s" % interface.MACAddress for ip_address in interface.IPAddress: print "ip_add: %s" % ip_address print def main(): sys_version() cpu_mem() #disk() #network() if __name__ = = '__main__' : main() print platform.system() print platform.release() print platform.version() print platform.platform() print platform.machine() |
以上内容是关于python使用wmi模块获取windows下的系统信息 监控系统的相关知识,希望对大家有所帮助。