python wmi 重启网卡_python使用WMI检测windows系统信息、硬盘信息、网卡信息的方法...
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import wmi
import sys,time,platform
def get_system_info(os):
"""
获取操作系统版本。
"""
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 "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 "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 "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 "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 wmi 重启网卡_python使用WMI检测windows系统信息、硬盘信息、网卡信息的方法...相关推荐
- [安装程序]HDDScan(硬盘坏道检测工具) 3.3[详细检测你的硬盘信息]
[安装程序]HDDScan(硬盘坏道检测工具) 3.3[详细检测你的硬盘信息] 软件名称:HDDScan(硬盘坏道检测工具) 3.3[详细检测你的硬盘信息] 软件大小:1.74 MB 软件类型:国产软 ...
- python实现文件管理系统_Python使用文件操作实现一个XX信息管理系统的示例
大家好,我是第一次python学了一个学期,期末要完成一个毕业生信息管理系统大作业的小韩了,由于上次没有仔细看开发实现的要求,实现了一个简单的毕业生信息管理系统,而这次专门整理了两种使用文件进行保存数 ...
- python wmi读取网卡MAC地址、CPU序列号、硬盘序列号、主板序列号、BIOS序列号
序列号相当于电脑的身份证号,是硬件出厂时,厂商写在硬件里的唯一识别码,具有唯一性和不可修改性.很多正版软件以此来识别用户电脑,限制安装. import uuid import wmi def get_ ...
- python 控制有线网卡_Python 使用指定的网卡发送HTTP请求的实例
需求: 一台机器上有多个网卡, 如何访问指定的 URL 时使用指定的网卡发送数据呢? $ curl --interface eth0 www.baidu.com # curl interface 可以 ...
- python 检查代码规范_Python代码规范检测
一定要注重代码规范,按照平时的代码管理,可以将Python代码规范检测分为两种: 静态本地检测:可以借助静态检查工具,比如:Flake8,Pylint等,调研了一下,用Flake8的相对较多,功能满足 ...
- python密码测试代码_python使用正则表达式检测密码强度源码分享
#encoding=utf-8 #------------------------------------------------------------------------------- # N ...
- python无法使用物理网卡_Python 实现监控所有物理网卡状态
项目中有监控网卡的需求,但是一般的方法都需要指定某个网卡,然后返回网卡状态,另外如何从所有网卡中过滤出物理网卡也是个问题. Linux2.6 内核中引入了 sysfs 文件系统.sysfs 文件系统整 ...
- python怎么重启内核_python怎么重启服务器
{"moduleinfo":{"card_count":[{"count_phone":1,"count":1}],&q ...
- python读取大文件目录_Python读取系统文件夹内所有文件并统计数量的方法
大家先看一下Python os模块中的部分函数 python 路径相关的函数 os.listdir(dirname):列出dirname下的目录和文件 os.getcwd():获得当前工作目录 os. ...
最新文章
- java获取ajax上传的文件,Java使用Ajax异步上传文件
- 第三十一篇:SOUI布局之相对于特定兄弟窗口
- Ogre 学习笔记 (二) 环境:阴影 、雾效、灯光
- 【最新合集】PAT乙级最优题解(题解+解析+代码)
- Scala具体解释---------Scala是什么?可伸展的语言!
- jquery.cookie.js操作cookie实现“记住密码”
- redis启动后出现WARNING you have Transparent Huge Pages (THP) support enabled in your kernel问题...
- webServices 应该支持Get和Post调用,在web.config应该增加以下代码
- 新华三首发数字大脑计划;微软进军物联网领域?说好的三星折叠屏发布会,就这样不开了?Google 发布小型芯片 Jacquard...
- CSDN的MarkDown编辑器插入图片时调整大小
- 实验楼python挑战答案_python基础知识
- vue表单实现输入框控制输入小数点后两位
- 微积分基本概念相关证明 —— 导数与极限(洛必达法则)
- ESXI安装威联通NAS系统
- ClearCase 介绍
- npm/cnpm install 报错 platform unsupported
- 鼠标自动点击器linux,鼠标自动点击器PC版下载
- 第一章节: 光源种类介绍
- mysq根据首字母模糊检索,拼音首字母模糊查询名称
- 基于stm32人体健康监测系统
热门文章
- 数据可视化怎么完成的_完成期望后会发生什么:可视化育儿数据
- Address already in use: JVM_Bind 8083端口被占用的几个解决办法
- Java中的equals和==的差别 以及Java中等价性和同一性的讨论
- Privoxy安装及配置
- ubuntu16.04安装java环境
- Python getattr() 函数
- python语言易错知识点强化
- Flink 有状态计算的状态容错
- google now
- 在keil uVision 2/uVision 3下使用伟福系列仿真器的方法: