Python学习之十一_Windows获取硬件信息
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获取硬件信息的更多相关文章
- WMI 获取硬件信息的封装函数与获取联想台式机的出厂编号方法
原文:WMI 获取硬件信息的封装函数与获取联想台式机的出厂编号方法 今天玩了一把WMI,查询了一下电脑的硬件信息,感觉很多代码都是可以提取出来的,就自己把那些公共部分提出出来,以后如果要获取 某部分的 ...
- 20180821 Python学习笔记:如何获取当前程序路径
20180821 Python学习笔记:如何获取当前程序路径 启动的脚本的路径为:D:\WORK\gitbase\ShenzhenHouseInfoCrawler\main.py 当前脚本的路径为:D ...
- linux下dmidecode命令获取硬件信息
linux下dmidecode命令获取硬件信息 2 A+ 所属分类:Linux 运维工具 dmidecode在 Linux 系统下获取有关硬件方面的信息.dmidecode 遵循 SMBIOS/DMI ...
- ansible facts 获取硬件信息
facts 指的是 ansible_facts 变量,ansible 中使用 setup 模块来获取,包含系统的大部分基础硬件信息, [root@10_1_162_39 host_vars]# ll ...
- C#获取硬件信息
//硬件信息 public class GF_Hardware { /// <summary> /// cpu序列号 /// </summary> /// <return ...
- python之psutil模块(获取系统性能信息(CPU,内存,磁盘,网络)
一.psutil模块 1. psutil是一个跨平台库(http://code.google.com/p/psutil/),能够轻松实现获取系统运行的进程和系统利用率(包括CPU.内存.磁盘.网络等) ...
- 广州商学院Python正方教务系统爬虫(获取个人信息成绩课表修改密码)
使用python的requests库简单爬取,使用xpath解析内容 可以获取个人信息.个人照片.成绩单和课表 github地址:https://github.com/PythonerKK/GZCC- ...
- [Python学习] 简单爬取CSDN下载资源信息
这是一篇Python爬取CSDN下载资源信息的样例,主要是通过urllib2获取CSDN某个人全部资源的资源URL.资源名称.下载次数.分数等信息.写这篇文章的原因是我想获取自己的资源全部的评论信息. ...
- 获取硬件信息的delphi源码CPUID、操作系统、Mac物理地址、计算机名称、IP地址、用户名
{-----------------------------------------------------------------------------作者:sushengmiyan 2013.0 ...
- Web网站中利用JavaScript中ActiveXObject对象获取硬件信息(显示器数量、分辨率)从而进行单双屏跳转
前言:最近这两天工作上,要实现一个功能,在好友阿聪的帮助下,算是比较好的解决了这个需求. B/S的Web网站,需要实现点击按钮时,根据客户端连接的显示屏(监视器)数量进行,单双屏跳转显示新页面. 由于 ...
随机推荐
- JavaScript回调函数的高手指南
摘要:本文将会解释回调函数的概念,同时帮你区分两种回调:同步和异步. 回调函数是每个前端程序员都应该知道的概念之一.回调可用于数组.计时器函数.promise.事件处理中. 本文将会解释回调函数的概念 ...
- 云数据库 GaussDB(for Influx) 解密第十一期:让智能电网中时序数据处理更高效
摘要:GaussDB(for Influx)是一款基于计算存储分离架构,完全兼容 InfluxDB 生态的云原生时序数据库. 本文分享自华为云社区<云数据库 GaussDB(for Influx ...
- webpack原理(3):Tapable源码分析及钩子函数作用分析
webpack本质上是一种事件流的机制,它的工作流程就是将各个插件串联起来,而实现这一切的核心就是Tapable,webpack中最核心的负责编译的Compiler和负责创建bundles的Compi ...
- ELT in ByteHouse 实践与展望
更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 谈到数据仓库, 一定离不开使用Extract-Transform-Load (ETL)或 Extract-Load ...
- 数据探索神器:火山引擎 DataLeap Notebook 揭秘
更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 背景介绍 Notebook 解决的问题 部分任务类型(python.spark等)在创建配置阶段,需要进行分步调试 ...
- Intellij idea getter setter 模板设置
通过getter setter 模板设置 在实体类中 自动添加 @XmlTransient 按 [Alt+Insert],弹出的提示中选择 Getter and Setter Xml Entity ...
- POJ 2387 Til the Cows Come Home(最短路板子题,Dijkstra算法, spfa算法,Floyd算法,深搜DFS)
Til the Cows Come Home Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 43861 Accepted: 14 ...
- 【每日一题】20.K-th Number (二分 + 尺取)
关于此题,我们分析一下: 一个区间第k大的数不小于x的条件是什么? 答案就是一个区间内不小于x的数的个数不小于k 那么,我们就会发现,我们其实并不需要知道每个数的值,实际上对我们有用的只有每个数与x的 ...
- AtCoder Beginner Contest 174 个人题解(ABC水题,D思维,E题经典二分,F离线树状数组)
做完本期以后,最近就不会再发布 AtCoder 的往届比赛了(备战蓝桥杯ing) 补题链接:Here ABC题都是水题,这里直接跳过 D - Alter Altar 题意:一个R-W串,可以进行两种操 ...
- 从运维域看 Serverless 真的就是万能银弹吗?
作者说 在开始本篇内容前我想与各位开发者达成几个共识. 第一个共识,软件工程没有银弹, Serverless 也不是银弹,它并不是解决所有问题的万能公式. 第二个共识,Serverless 能 ...