python使用WMI检测windows系统信息、硬盘信息、网卡信息的方法

本文实例讲述了python使用WMI检测windows系统信息、硬盘信息、网卡信息的方法。分享给大家供大家参考。具体实现方法如下:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
import wmi
import sys,time,platform
def get_system_info(os):
  """
  获取操作系统版本。
  """
  print
  print "Operating system:"
  if os == "Windows":
    c = wmi.WMI ()
    for sys in c.Win32_OperatingSystem():
      print '\t' + "Version :\t%s" % sys.Caption.encode("GBK")
      print '\t' + "Vernum :\t%s" % sys.BuildNumber
def get_memory_info(os):
  """
  获取物理内存和虚拟内存。
  """
  print
  print "memory_info:"
  if os == "Windows":
    c = wmi.WMI ()
    cs = c.Win32_ComputerSystem()
    pfu = c.Win32_PageFileUsage()
    MemTotal = int(cs[0].TotalPhysicalMemory)/1024/1024
    print '\t' + "TotalPhysicalMemory :" + '\t' + str(MemTotal) + "M"
    #tmpdict["MemFree"] = int(os[0].FreePhysicalMemory)/1024
    SwapTotal = int(pfu[0].AllocatedBaseSize)
    print '\t' + "SwapTotal :" + '\t' + str(SwapTotal) + "M"
    #tmpdict["SwapFree"] = int(pfu[0].AllocatedBaseSize - pfu[0].CurrentUsage)
def get_disk_info(os):
  """
  获取物理磁盘信息。
  """
  print
  print "disk_info:"
  if os == "Windows":
    tmplist = []
    c = wmi.WMI ()
    for physical_disk in c.Win32_DiskDrive():
      if physical_disk.Size:
        print '\t' + str(physical_disk.Caption) + ' :\t' + str(long(physical_disk.Size)/1024/1024/1024) + "G"
def get_cpu_info(os):
  """
  获取CPU信息。
  """
  print
  print "cpu_info:"
  if os == "Windows":
    tmpdict = {}
    tmpdict["CpuCores"] = 0
    c = wmi.WMI ()
    for cpu in c.Win32_Processor():
      tmpdict["CpuType"] = cpu.Name
    try:
      tmpdict["CpuCores"] = cpu.NumberOfCores
    except:
      tmpdict["CpuCores"] += 1
      tmpdict["CpuClock"] = cpu.MaxClockSpeed
    print '\t' + 'CpuType :\t' + str(tmpdict["CpuType"])
    print '\t' + 'CpuCores :\t' + str(tmpdict["CpuCores"])
def get_network_info(os):
  """
  获取网卡信息和当前TCP连接数。
  """
  print
  print "network_info:"
  if os == "Windows":
    tmplist = []
    c = wmi.WMI ()
    for interface in c.Win32_NetworkAdapterConfiguration (IPEnabled=1):
        tmpdict = {}
        tmpdict["Description"] = interface.Description
        tmpdict["IPAddress"] = interface.IPAddress[0]
        tmpdict["IPSubnet"] = interface.IPSubnet[0]
        tmpdict["MAC"] = interface.MACAddress
        tmplist.append(tmpdict)
    for i in tmplist:
      print '\t' + i["Description"]
      print '\t' + '\t' + "MAC :" + '\t' + i["MAC"]
      print '\t' + '\t' + "IPAddress :" + '\t' + i["IPAddress"]
      print '\t' + '\t' + "IPSubnet :" + '\t' + i["IPSubnet"]
    for interfacePerfTCP in c.Win32_PerfRawData_Tcpip_TCPv4():
        print '\t' + 'TCP Connect :\t' + str(interfacePerfTCP.ConnectionsEstablished)
if __name__ == "__main__":
  os = platform.system()
  get_system_info(os)
  get_memory_info(os)
  get_disk_info(os)
  get_cpu_info(os)
  get_network_info(os) 

希望本文所述对大家的Python程序设计有所帮助。

(0)

相关推荐

  • python在Windows下安装setuptools(easy_install工具)步骤详解

    本文讲述了python在Windows下安装setuptools(easy_install工具)的方法.分享给大家供大家参考,具体如下: [题外话介绍下setuptools] setuptools 是一组由PEAK(Python Enterprise Application Kit)开发的 Python 的 distutils 工具的增强工具,可以让程序员更方便的创建和发布 Python的egg 包,特别是那些对其它包具有依赖性的状况. 由 setuptools 创建和发布的包看起来和基于 di

  • Python制作Windows系统服务

    最近有个Python程序需要安装并作为Windows系统服务来运行,过程中碰到一些坑,整理了一下. Python服务类 首先Python程序需要调用一些Windows系统API才能作为系统服务,具体内容如下: #!/usr/bin/env python # -*- coding: utf-8 -*- import sys import time import win32api import win32event import win32service import win32serviceuti

  • python解决方案:WindowsError: [Error 2]

    使用Python的rename()函数重命名文件时出现问题,提示 WindowsError: [Error 2] 错误,最初代码如下: def renameFile(filename): filePre = "D:\\FileDemo\\Python\\pt.py" os.rename(filePre, filename) print os.listdir(filePre) if __name__ == '__main__': fileNew = "D:\\FileDemo\

  • 利用Python实现Windows定时关机功能

    是最初的几个爬虫,让我认识了Python这个新朋友,虽然才刚认识了几天,但感觉有种莫名的默契感.每当在别的地方找不到思路,总能在Python找到解决的办法.自动关机,在平时下载大文件,以及跑程序的时候能用到的,刚才写了个windows自动关机的小程序,程序过于简单,就当是玩玩吧,当然还有很多可改进的地方.下面正文:  #ui制作: 照旧,笔者由Qt制作完成需要的ui,包括label,label_2,label_3,lable_4,lineEdit,lineEdit_2,pushButton组件.

  • 利用python程序帮大家清理windows垃圾

    前言 大家应该都有所体会,在windows系统使用久了就会产生一些"垃圾"文件.这些文件有的是程序的临时文件,有的是操作记录或日志等.垃圾随着时间越积越多,导致可用空间减少,文件碎片过多,使得系统的运行速度受到一定影响. 而Mac系统和Linux系统并不存在这类问题,所以只适用于windows 知识概要 某些缓存文件可以提高程序的执行速度,比如缓存 cookie.使用记录 recent.预读取 prefetch 等.所以清理临时文件并不代表系统运行就会变快,有时也可能变慢. windo

  • python使用wmi模块获取windows下的系统信息 监控系统

    Python用WMI模块获取Windows系统的硬件信息:硬盘分区.使用情况,内存大小,CPU型号,当前运行的进程,自启动程序及位置,系统的版本等信息. 本文实例讲述了python使用wmi模块获取windows下的系统信息 监控系统 #!/usr/bin/env python # -*- coding: utf- -*- #http://www.cnblogs.com/liu-ke/ import wmi import os import sys import platform import

  • python使用ctypes模块调用windowsapi获取系统版本示例

    python使用ctypes模块调用windows api GetVersionEx获取当前系统版本,没有使用python32 复制代码 代码如下: #!c:/python27/python.exe#-*- coding:utf-8 -*- "通过调用Window API判断当前系统版本"# 演示通过ctypes调用windows api函数.# 作者已经知道python32能够实现相同功能# 语句末尾加分号,纯属个人习惯# 仅作部分版本判断,更详细的版本判断推荐系统OSVERSION

  • python使用WMI检测windows系统信息、硬盘信息、网卡信息的方法

    本文实例讲述了python使用WMI检测windows系统信息.硬盘信息.网卡信息的方法.分享给大家供大家参考.具体实现方法如下: #!/usr/bin/env python # -*- coding: utf-8 -*- import wmi import sys,time,platform def get_system_info(os): """ 获取操作系统版本. """ print print "Operating system

  • python使用wmi模块获取windows下硬盘信息的方法

    本文实例讲述了python使用wmi模块获取windows下硬盘信息的方法.分享给大家供大家参考.具体实现方法如下: # -*- coding: utf-8 -*- #import ######################################################################## import os, sys import time import wmi ################################################

  • Python运维之获取系统CPU信息的实现方法

    使用Python进行运维工作的时候有时候需要获取CPU的信息,这在psutil模块库的帮助下非常容易实现. 常见的CPU信息有以下几种: 1,用户时间以及百分比: 2,系统时间以及百分比: 3,空闲时间以及百分比: 4,CPU的硬件信息: 前3个中的时间可以采用cpu_times方法获取,百分比可以使用cpu_times_pcercent获得. 简单的示范如下: In [9]: importpsutil In [10]:psutil.cpu_times() Out[10]: scputimes(

  • 使用Python获取CPU、内存和硬盘等windowns系统信息的2个例子

    例子一: Python用WMI模块获取windowns系统的硬件信息:硬盘分区.使用情况,内存大小,CPU型号,当前运行的进程,自启动程序及位置,系统的版本等信息. 复制代码 代码如下: #!/usr/bin/env python # -*- coding: utf-8 -*- import wmi import os import sys import platform import time def sys_version():      c = wmi.WMI ()     #获取操作系统

  • WMI获取硬件信息封装函数方法(联想台式机出厂编号 CPUID BIOS序列号 硬盘信息 显卡信息 MAC地址)

    今天玩了一把WMI,查询了一下电脑的硬件信息,感觉很多代码都是可以提取出来的,就自己把那些公共部分提出出来,以后如果要获取某部分的硬件信息就不用写一个一个的函数,比如获取MAC地址就写一个获取MAC地址的函数,获取CPU 信息就写一个获取CPU信息的函数,太麻烦了 如下是函数代码: 复制代码 代码如下: private static string identifier(string wmiClass, string wmiProperty, string wmiMustBeTrue)      

  • python通过ssh-powershell监控windows的方法

    本文实例讲述了python通过ssh-powershell监控windows的方法.分享给大家供大家参考.具体分析如下: 对于服务器的监控来说,监控linux不管是自己动手写脚本还是用一些开源的工具比如nagios,zenoss什么的.但毕竟还是有些公司有windows做服务器的,相对linux来说,windows没有方便的shell,cmd下提供的命令对于监控来说远远没有linux方便.但是现在windows上如果安装了powershell(win7,2008自带),就比以前方便多了,linu

  • 利用Python如何实时检测自身内存占用

    前言 最近在做文本统计,用 Python 实现,遇到了一个比较有意思的难题--如何保存统计结果. 直接写入内存实在是放不下,十几个小时后内存耗尽,程序被迫关闭.如果直接写入数据库吧,每次写入又太慢了,本来就十几个小时了,这样下去就要往星期上数了,也不是个办法. 解决方案 最后,我想到了一个两者兼顾的方案--用内存做缓冲,达到一定量之后一次性将当前所有数据合并到硬盘里. 但这样就有一个阈值,如何确定同步硬盘的时机,通常可以按照文件粒度进行处理,比如处理一个语料文件同步一次--但我的语料有大有小,大

  • python利用platform模块获取系统信息

    Python platform 模块 platform 模块用于查看当前操作系统的信息,来采集系统版本位数计算机类型名称内核等一系列信息. 使用方法: #coding:utf-8 import platform t=platform.system() print(t) #coding=utf-8 #platform_mode.py import platform ''' python中,platform模块给我们提供了很多方法去获取操作系统的信息 如: import platform platf

  • Python实现笑脸检测+人脸口罩检测功能

    目录 一.人脸图像特征提取方法 二.对笑脸数据集genki4k进行训练和测试(包括SVM.CNN),输出模型训练精度和测试精度(F1-score和ROC),实现检测图片笑脸和实时视频笑脸检测 (一)环境.数据集准备 (二)训练笑脸数据集genki4k (三)图片笑脸检测 (四)实时视频笑脸检测 三.将笑脸数据集换成人脸口罩数据集,并对口罩数据集进行训练,编写程序实现人脸口罩检测 (一)训练人脸口罩数据集 (二)编程实现人脸口罩检测 一.人脸图像特征提取方法 https://www.jb51.ne

随机推荐