获取windows操作系统的硬件信息

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# http://www.cnblogs.com/liu-ke/
import wmi
import os
import sys
import platform
import time #还需要安装一个模块pywin32,要不会报错 #
# def sys_version():
# c = wmi.WMI()
# # 获取操作系统版本
# for sys in c.Win32_OperatingSystem():
# print("Version:%s" % sys.Caption.encode("UTF8"), "Vernum:%s" % sys.BuildNumber)
# print(sys.OSArchitecture.encode("UTF8")) # 系统是32位还是64位的
# print(sys.NumberOfProcesses) # 当前系统运行的进程总数
#
#
# # c = wmi.WMI()
# # for i in c.classes:
# # if "operatingsystem" in i.lower():
# # print (i)
# # print(c.__doc__)
#
#
# def cpu_mem():
# c = wmi.WMI()
# # CPU类型和内存
# for processor in c.Win32_Processor():
# # print "Processor ID: %s" % processor.DeviceID
# print("Process Name: %s" % processor.Name.strip())
# for Memory in c.Win32_PhysicalMemory():
# print("Memory Capacity: %.fMB" % (int(Memory.Capacity) / 1048576))
#
#
# def cpu_use():
# # 5s取一次CPU的使用率
# c = wmi.WMI()
# while True:
# for cpu in c.Win32_Processor():
# timestamp = time.strftime('%a, %d %b %Y %H:%M:%S', time.localtime())
# print('%s | Utilization: %s: %d %%' % (timestamp, cpu.DeviceID, cpu.LoadPercentage))
# time.sleep(5)
#
#
# def disk():
# c = wmi.WMI()
# # 获取硬盘分区
# for physical_disk in c.Win32_DiskDrive():
# for partition in physical_disk.associators("Win32_DiskDriveToDiskPartition"):
# for logical_disk in partition.associators("Win32_LogicalDiskToPartition"):
# print(physical_disk.Caption.encode("UTF8"), partition.Caption.encode("UTF8"), logical_disk.Caption)
#
# # 获取硬盘使用百分情况
# for disk in c.Win32_LogicalDisk(DriveType=3):
# print(disk.Caption, "%0.2f%% free" % (100.0 * len(disk.FreeSpace) / len(disk.Size))) def network():
c = wmi.WMI()
# 获取MAC和IP地址
for interface in c.Win32_NetworkAdapterConfiguration(IPEnabled=1):
print("MAC: %s" % interface.MACAddress)
for ip_address in interface.IPAddress:
print("ip_add: %s" % ip_address) print("IPV4地址为: " + interface.IPAddress[0])
print("IPV6地址为: " + interface.IPAddress[1]) # # 获取自启动程序的位置
# for s in c.Win32_StartupCommand():
# print("[%s] %s <%s>" % (s.Location.encode("UTF8"), s.Caption.encode("UTF8"), s.Command.encode("UTF8"))) # 获取当前运行的进程
# for process in c.Win32_Process():
# print(process.ProcessId, process.Name) def main():
# sys_version()
# cpu_mem()
# disk()
network()
# cpu_use() if __name__ == '__main__':
main()
# print(platform.system())
# print(platform.release())
# print(platform.version())
# print(platform.platform())
# print(platform.machine())

python - wmi模块学习(windwos硬件信息获取)的更多相关文章

  1. python wmi模块学习

    # -*- coding: cp936 -*- import wmi c = wmi.WMI () for sys in c.Win32_OperatingSystem(): print " ...

  2. python - argparse 模块学习

    python - argparse 模块学习 设置一个解析器 使用argparse的第一步就是创建一个解析器对象,并告诉它将会有些什么参数.那么当你的程序运行时,该解析器就可以用于处理命令行参数. 解 ...

  3. python paramiko模块学习分享

    python paramiko模块学习分享 paramiko是用python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接.paramiko支持Linux, Sola ...

  4. Python time模块学习

    Python time模块提供了一些用于管理时间和日期的C库函数,由于它绑定到底层C实现,因此一些细节会基于具体的平台. 一.壁挂钟时间 1.time() time模块的核心函数time(),它返回纪 ...

  5. windows linux—unix 跨平台通信集成控制系统----系统硬件信息获取

    控制集成系统需要了解系统的各项硬件信息,之前我们设计的时候,习惯使用c函数来搞,后来可能发现程序的移植性收到了一些影响,比如unix内核的一些c函数在linux下面是没有的: 比如 苹果达尔文内核的如 ...

  6. Python logging 模块学习

    logging example Level When it's used Numeric value DEBUG Detailed information, typically of interest ...

  7. python atexit模块学习

    python atexit模块 只定义了一个register模块用于注册程序退出时的回调函数,我们可以在这个函数中做一下资源清理的操作 注:如果程序是非正常crash,或者通过os._exit()退出 ...

  8. python os模块学习

    一.os模块概述 Python os模块包含普遍的操作系统功能.如果你希望你的程序能够与平台无关的话,这个模块是尤为重要的. 二.常用方法 1.os.name 输出字符串指示正在使用的平台.如果是wi ...

  9. python logging模块学习(转)

    前言 日志是非常重要的,最近有接触到这个,所以系统的看一下Python这个模块的用法.本文即为Logging模块的用法简介,主要参考文章为Python官方文档,链接见参考列表. 另外,Python的H ...

随机推荐

  1. linux ACL权限

    利用这两个指令就可以了: getfacl:获取某個文件的 ACL 设置 setfacl:设置某個文件的 ACL 规范 [root@study ~]# setfacl [-bkRd] [{-m|-x} ...

  2. BZOJ4448[Scoi2015]情报传递——主席树+LCA

    题目描述 奈特公司是一个巨大的情报公司,它有着庞大的情报网络.情报网络中共有n名情报员.每名情报员口J-能有 若T名(可能没有)下线,除1名大头目外其余n-1名情报员有且仅有1名上线.奈特公司纪律森严 ...

  3. BZOJ4555 HEOI2016/TJOI2016求和(NTT+斯特林数)

    S(i,j)=Σ(-1)j-k(1/j!)·C(j,k)·ki=Σ(-1)j-k·ki/k!/(j-k)!.原式=ΣΣ(-1)j-k·ki·2j·j!/k!/(j-k)! (i,j=0~n).可以发现 ...

  4. Python从入门到放弃系列(Django/Flask/爬虫)

    第一篇 Django从入门到放弃 第二篇 Flask 第二篇 爬虫

  5. MT【60】几个不常见的函数图像

    此讲部分内容属于课外阅读拓展,学有余力的可以看看. [We need to know, and we will know.]----大卫·希尔伯特(1862-1943) $y=sin\frac{1}{ ...

  6. 搬进Github

    学习参考 萌码 一.Github简介和基本操作 Github 上操作基本上围绕一个个项目展开.项目就是一个文件夹,在github中成为“仓库”(repository),里面放着所有的项目文件,可以是代 ...

  7. 【BZOJ3668】【NOI2014】起床困难综合症(贪心)

    [NOI2014]起床困难综合症(贪心) 题面 Description 21 世纪,许多人得了一种奇怪的病:起床困难综合症,其临床表现为:起床难,起床后精神不佳.作为一名青春阳光好少年,atm 一直坚 ...

  8. KEIL打开的工程所在目录过深将会编译出错

    这是一个工程所在目录过深导致的编译错误

  9. 安装Prometheus-Opeartor

    一.下载git clone clone https://github.com/coreos/prometheus-operator.git或:wget https://github.com/coreo ...

  10. luogu2024 食物链 (并查集)

    把一个点拆成三个,分别对应它的同类.它的猎物和它的天敌,这样的话(以下的相等都是并查集意义上的): 如果令a,b同类,那么a的猎物不能是b的同类,a的天敌不能是b的同类 如果令a吃b,那么a的同类不能 ...