Python学习之十一_Windows获取硬件信息

python,学习,十一,windows,获取,硬件,信息 · 浏览次数 : 166

小编点评

**获取硬件信息简介** ```python import psutilimport wmiimport platform# 系统的内存利用率free = str(round(psutil.virtual_memory().free / (1024.0 * 1024.0 * 1024.0), 2))+'GB'total = str(round(psutil.virtual_memory().total / (1024.0 * 1024.0 * 1024.0), 2))+'GB'memory_use_percent = str(psutil.virtual_memory().percent)+' %'print('可用内存:',free) # 可用内存: 8.14GB # 获取CPU序列号 cpuinfo = wmi.WMI()for cpu in cpuinfo.Win32_Processor(): print("您的CPU序列号为:\" + cpu.ProcessorId.strip()) # 获取主板序列号 board_id = cpuinfo.Win32_BaseBoard() print("CPU的序列号为: \" + board_id.SerialNumber) # 获取硬盘序列号 for physical_disk in cpuinfo.Win32_DiskDrive(): print("硬盘序列号: \" + physical_disk.SerialNumber) ``` **其他** * 该代码使用 `psutil` 库来获取系统硬件信息。 * `wmi`库用于获取系统硬件信息。 * `platform`库用于获取操作系统名称和版本号。 * 该代码将输出以下信息: * 可用内存 * 总内存 * 内存占用率 * CPU占用率 * 物理 CPU个数 * 机器序列号 * HDD序列号 * CPU 信息

正文

Python学习之十一_Windows获取硬件信息


简介

网上找了一些方法简单整理了下,可以快速获取部分信息
包含机器名称等. 
以及序列号相关

部分学习来源:
https://blog.51cto.com/u_15354476/5339864

源码

import psutil
import wmi
import platform

# 系统的内存利用率
free = str(round(psutil.virtual_memory().free / (1024.0 * 1024.0 * 1024.0), 2))+'GB'
total = str(round(psutil.virtual_memory().total / (1024.0 * 1024.0 * 1024.0), 2))+'GB'
memory_use_percent = str(psutil.virtual_memory().percent)+' %'
print('可用内存:',free) # 可用内存: 8.14GB
print('总内存',total) # 总内存 15.73GB
print('内存占用率',memory_use_percent) # 内存占用率 48.2%
print('cpu占用率', str(psutil.cpu_percent(interval=1))+' %') # cpu占用率 31.5%
print('物理cpu个数',psutil.cpu_count(logical=False)) # 物理cpu个数 4



print("您的系统为:" + platform.system())  # Windows
print("您的操作系统名称及版本号:" + platform.platform()) # Windows-10-10.0.19041-SP0
print("您的操作系统版本号:" + platform.version()) # 10.0.19041
print("您的CPU生产商为:" + platform.machine()) # AMD64
print("您的CPU信息为:" + platform.processor()) # Intel64 Family 6 Model 140 Stepping 1, GenuineIntel
print("获取操作系统的位数:" ,platform.architecture()) # ('64bit', 'WindowsPE')
print("计算机的网络名称:" + platform.node()) # DESKTOP-K2Q78MR
print("包含上面所有的信息汇总:" , platform.uname())

cpuinfo = wmi.WMI()

for cpu in cpuinfo.Win32_Processor():

    print("您的CPU序列号为:" + cpu.ProcessorId.strip()) # BFEBFBFF0999906C1
    print("您的CPU名称为:" + cpu.Name) # 11th Gen Intel(R) Core(TM) i7-1165G7 @ 2.80GHz
    print("您的CPU已使用:%d%%" % cpu.LoadPercentage) # 17%
    print("您的CPU核心数为:%d" % cpu.NumberOfCores) # 4
    print("您的CPU时钟频率为:%d" % cpu.MaxClockSpeed) # 1690

for bios_id in cpuinfo.Win32_BIOS():
    print("机器序列号: " + bios_id.SerialNumber.strip())

for physical_disk in cpuinfo.Win32_DiskDrive():
    print("硬盘序列号: " + physical_disk.SerialNumber)

# CPU序列号
for cpu in cpuinfo.Win32_Processor():
    print(cpu.ProcessorId.strip())

# 主板序列号
for board_id in cpuinfo.Win32_BaseBoard():
    print("CPU的序列号为: " + board_id.SerialNumber)

# mac地址
for mac in cpuinfo.Win32_NetworkAdapter():
    print("机器的mac地址为: " + str(mac.MACAddress))


效果为

可用内存: 5.37GB
总内存 15.87GB
内存占用率 66.2 %
cpu占用率 2.7 %
物理cpu个数 4
您的系统为:Windows
您的操作系统名称及版本号:Windows-10-10.0.18362-SP0
您的操作系统版本号:10.0.18362
您的CPU生产商为:AMD64
您的CPU信息为:Intel64 Family 6 Model 142 Stepping 11, GenuineIntel
获取操作系统的位数: ('64bit', 'WindowsPE')
计算机的网络名称:xxxx
包含上面所有的信息汇总: uname_result(system='Windows', node='xxxx', release='10', version='10.0.18362', machine='AMD64')
您的CPU序列号为:BFEBFBFxxxxx
您的CPU名称为:Intel(R) Core(TM) i7-8565U CPU @ 1.80GHz
您的CPU已使用:5%
您的CPU核心数为:4
您的CPU时钟频率为:1992
机器序列号: xxxxx
硬盘序列号: 2224634xxxx
硬盘序列号: xxxxxxxx_952D_6E19.
xxxxx000806EB
CPU的序列号为: xxxxx68JCG0D9

pyinstaller处理

编译成exe, 可以随时使用.

与Python学习之十一_Windows获取硬件信息相似的内容:

Python学习之十一_Windows获取硬件信息

Python学习之十一_Windows获取硬件信息 简介 网上找了一些方法简单整理了下,可以快速获取部分信息 包含机器名称等. 以及序列号相关 部分学习来源: https://blog.51cto.com/u_15354476/5339864 源码 import psutil import wmi

Python学习之十_paramiko的简单学习

Python学习之十_paramiko的简单学习 简介 pywinrm 是python用于连接访问windows的工具 paramiko 是python用于连接访问linux的工具 ansible等工具很多也是基于类似的组件进行的处理 连接不同的系统进行命令行的操作. paramiko的简介 par

Python学习之十三_pip的学习

Python学习之十三_pip的学习 pip的含义 pip: pip is the package installer for Python. You can use pip to install packages from the Python Package Index and other in

Python学习之十八_获取神通数据库所有的表数据量

# Python学习之十八_获取神通数据库所有的表数据量 ## 背景 ``` 今天想获取一下所有数据库的表信息.但是发现神通数据库的系统表里面的表信息不正确 无法获取实际意义的表信息. 联系了下神通数据库的原厂高手. 给了一个存储过程可以进行相关的处理. 因为最近学习python(放下一周就忘记的七

Python学习之十九_程序运行时间的验证

# Python学习之十九_程序运行时间的验证 ## 背景 ``` 最近一段时间比较忙. 而且还遇到了一个lua脚本优化redis访问的场景. 想着自己还在学习python(时断时续) 所以想借着这个场景,学习一下python连接redis,以及验证lua脚本和原生redis命令的效率问题. 虽然方

Python学习之十八_django的学习(二)

# Python学习之十八_django的学习(二) ## 前言 ``` 前面学习了基本的django的使用. 这里想着稍微深入一点学习templates 以及进行级联的路由展示. ``` ## 修改配置文件 ``` 要想使用 templates下面的文件. 需要修改一下项目级别的 settings

[转帖]Python学习之十七_django的入门

# Python学习之十七_django的入门 ## 前言 ``` Python学习了一周, 慢慢总结摸索. 自己还是有多不会的地方. 感慨这些年浪费的时间. 所有的时间都是选择大于努力. 努力最多感动自己. 生活是需要的是正确的选择. 平凡的实在人太难在一个固化的社会生存. 共勉. ``` ##

gRPC入门学习之旅(十)

gRPC是一个高性能、通用的开源远程过程调用(RPC)框架,基于底层HTTP/2协议标准和协议层Protobuf序列化协议开发, gRPC 客户端和服务端可以在多种环境中运行和交互。你可以用Java创建一个 gRPC 服务端,用 Go、Python、C# 来创建客户端。本系统文章详细描述了如何创建一...

使用Python的一维卷积

学习&转载文章:使用Python的一维卷积 背景 在开发机器学习算法时,最重要的事情之一(如果不是最重要的话)是提取最相关的特征,这是在项目的特征工程部分中完成的。 在CNNs中,此过程由网络自动完成。特别是在早期层中,网络试图提取图像的最重要的特征,例如边缘和形状。 另一方面,在最后一层中,它将能

【python技巧】文本文件的读写操作

本文介绍了python进行文件读取的常用库之一——file库,介绍了其中的读、写、指针移动函数,供初学者学习了解。