python利用WMI监控windows状态如CPU、内存、硬盘

安装pywin32库

下载地址: https://sourceforge.net/projects/pywin32/files%2Fpywin32/
选择对应python版本的文件。
下载后在windows安装好。

安装wmi库

下载地址:https://pypi.python.org/pypi/WMI/#downloads
下载后在windows安装好。

测试安装结果

import win32api
import wmi

如果没有报错就是安装好了。

查询可用类

import wmi
myWmi= wmi.WMI()
for cls in myWmi.classes:
    print(cls)
# 可以显示如下的可用类(省略),常用;
  • Win32_Processor 查CPU
  • Win32_ComputerSystem 查内存
  • Win32_LogicalDisk 查硬盘

查询CPU信息

从上面的可用类,有一个Win32_Processor

cpuArr = myWmi.Win32_Processor()

查出来之后,它有哪些属性可用?比方说,cpu的名字,几核? 这时候要到MSDN查WMI资料,地址:https://msdn.microsoft.com/en-us/library/aa394373(v=vs.85).aspx

  • uint32 MaxClockSpeed;
  • string Name;
  • uint32 NumberOfCores;

    for cpu in cpuArr :
    print('cpu:', cpu.loadPercentage, cpu.numberOfCores, cpu.name, cpu.maxClockSpeed/1000)
    # 上面查的属性名,首字母在python中变为小写.
    # cpu: 10 2 Intel(R) Pentium(R) CPU G3260 @ 3.30GHz 3.3

其他

比如查服务,查进程,查硬盘,方法同上

连接到另一台电脑

wmiService = wmi.WMI("192.168.0.1", user=r"administrator", password="123456")
posted @ 2017-11-08 08:12  努力哥  阅读(8796)  评论(0编辑  收藏  举报