pip install wmi  如果不能安装,就使用 安装 python3 -m pip install wmi

再安装pywin32这个包

使用:

import platform
import win32com
import wmi
class Win32Info(object):
def __init__(self):
#wmi固定用法这样就可以获取服务器的信息了
self.wmi_obj = wmi.WMI()
self.wmi_service_obj = win32com.client.Dispatch("WbemScripting.SWbemLocator")
self.wmi_service_connector =self.wmi_service_obj.ConnectServer(".", "root\cimv2")
  
  def get_cpu_info(self):
    """获取cpu信息"""
  data = {}
  cpu_lists = self.wmi_obj.Win32_Processor()
  cpu_core_count = 0 #初始化cpu核数
    for cpu in cpu_lists:  #有几颗cpu就循环几回
    cpu_core_count += cpu.NumberOfCores #内循环一次增加一个cpu核数
    cpu_model = cpu.Name
    data["cpu_count"] = len(cpu_lists)
    data["cpu_model"] = cpu_model
    data["cpu_core_count"] =cpu_core_count
    return data
  
    def get_ram_info(self):
      """获取内存信息"""
    data = []
    #提取内存所有的内容
    ram_collections = self.wmi_service_connector.ExecQuery("Select * from Win32_PhysicalMemory")
     for item in ram_collections:
    item_data = {}
    #print item
    mb = int(1024 * 1024)
     ram_size = int(item.Capacity) / mb
     item_data = {
     "slot":item.DeviceLocator.strip(),
     "capacity":ram_size,
     "model":item.Caption,
     "manufactory":item.Manufacturer,
     "sn":item.SerialNumber,
     }
    data.append(item_data)
     #for i in data:
     # print i
    return {"ram":data}

  


 

  内存:

linux 获取服务器硬件信息命令:

dmidecode -t system

 

python_way ,day25 wmi的更多相关文章

  1. python_way ,day25 CMDB_models (数据库设计)

    from django.db import models from django.contrib.auth.models import User # Create your models here. ...

  2. C#通过WMI的wind32 的API函数实现msinfo32的本地和远程计算机的系统日志查看功能

    先不说如何实现,先来看看效果图: 读取远程的需要提供下远程的计算用户名和密码即可. 如何实现这个代码功能,请看如下代码部分: 实体类: using System; using System.Colle ...

  3. 迁移Reporting Services的方法与WMI错误

    今天上午,接到一个任务:迁移SQL SERVER 2005的报表服务到另外一台SQL SERVER 2008服务器,结果等我备份了两边服务器的ReportServer,ReportServerTemp ...

  4. silverlight 4.0 的oob模式下,调用com通过wmi重启自身进程 killself

    silverlight目前开发的应用,想做到系统内注销后自动重新启动下 sllauncher.exe ,实现方式是通过WMI的COM接口,获取到当前应用的执行命令行(CommandLine):并通过s ...

  5. 通过WMI接口监控服务器性能

    WMI 是微软操作系统的一个内置的组件,通过使用WMI我们可以获取服务器硬件信息.收集服务器性能数据.操作Windows服务,甚至可以远程关机或是重启服务器. 一.在C#编程中使用WMI 要想在C#程 ...

  6. [问题记录.dotnet]取网卡信息报错"找不到"-WMI - Not found

    异常: System.Management.ManagementException: 找不到     在 System.Management.ManagementException.ThrowWith ...

  7. 使用WMI和性能计数器监控远程服务器权限设置

    应用场景:在web服务器中,通过.NET编码使用WMI查询远程服务器的一些硬件配置信息,使用性能计数器查询远程机器的运行时资源使用情况.在网上没有找到相关的东西,特记录与大家共享. 将web服务器和所 ...

  8. WMI 硬件类简单介绍,默认打印机

    获取默认打印机: SELECT * FROM Win32_Printer WHERE Default=True 常用的几个WMI: 主板:Win32_BaseBoard http://msdn.mic ...

  9. C#:基于WMI查询USB设备信息 及 Android设备厂商VID列表

    /* ---------------------------------------------------------- 文件名称:WMIUsbQuery.cs 作者:秦建辉 MSN:splashc ...

随机推荐

  1. 【7集iCore3基础视频】7-5 iTool2驱动安装

    iTool2驱动安装: 高清源视频:链接:http://pan.baidu.com/s/1dF5FtlB%20密码:g5x7 iCore3 购买链接:https://item.taobao.com/i ...

  2. C#的TreeView标记

    今天用到了TreeView控件,多次添加后发现内容是重复的,于是用到清除:this.myTreeView.Nodes.Clear(): 如果想在添加完节点后,默认全展开:this.myTreeView ...

  3. Ogre代码学习之1——Ogre中地形lod的基础:deltaHeight的计算

    Ogre的地形系统中的重要概念:高度差,英文HeightDeltas,表示某个完整细节中的顶点,在某个它被隐去的lod中被插值之后的高度和原始高度(即高度图中的高度)之差. DeltaHeight = ...

  4. Android jni系统变量、函数、接口定义汇总

    在做Android jni开发时,jni为我们提供了哪些函数.接口.变量,有时候一头雾水,今天就把jni.h中定义的所有内容列出来,供自己查阅: /* * Copyright (C) 2006 The ...

  5. gets(),fgets()的作用机制探究

    gets(),fgets() scanf("%d",&a)若接受形如 2 这样的输入后,缓冲区内会留一个\n,此后若调用gets等函数时会读出这个换行出现错误,需注意 fg ...

  6. Android studio -VSN 使用笔记

    1.Android studio 安装 中文组官网:http://www.android-studio.org/ 常见问题参考: 分支冲突合并 http://blog.csdn.net/tearsmo ...

  7. HttpURLConnection请求

    方法调用: //测试 public static void main(String[] args) { Map map = new HashMap(); map.put("type" ...

  8. UIWebView中Html中用JS调用OC方法及OC执行JS代码

    HTML代码: <html> <head> <title>HTML中用JS调用OC方法</title> <meta http-equiv=&quo ...

  9. Docker的私有仓库

    server 192.168.1.107   registry   ---push client 192.168.1.103                 --pull [192.168.1.107 ...

  10. float属性

    float属性介绍 float给人一种捉摸不透的感觉,不过可以依照浏览器的解析机制(根据HTML文档,从上往下解析),对float属性了解一二.float有四种值:none/left/right/in ...