Python获取电脑硬件信息及状态的实现方法

 更新时间:2014年08月29日 09:36:44   投稿:shichen2014  
这篇文章主要介绍了Python获取电脑硬件信息及状态的实现方法,是一个很实用的技巧,需要的朋友可以参考下

本文以实例形式展示了Python获取电脑硬件信息及状态的实现方法,是Python程序设计中很有实用价值的技巧。分享给大家供大家参考之用。具体方法如下:

主要功能代码如下:

#!/usr/bin/env python
# encoding: utf-8

from optparse import OptionParser
import os
import re
import json

def main():
  try:
    parser = OptionParser(usage="%prog [options]")
    reg_result=re.compile('\[(.*)\]')
    #add option
    parser.add_option("-m","--machine",action="store",type="string",dest="machine",help="the machine to be check")
    parser.add_option("-f","--file",action="store",type="string",dest="file",help="the file with machine list")
    parser.add_option("-n","--noah_path",action="store",type="string",dest="noah",help="the bns path or group")
    (options,args)=parser.parse_args()

    result=""
    if options.machine:
      options.machine=options.machine.replace(".baidu.com","")
      result=os.popen("meta-query entity host "+options.machine+" -f sysSuit,memTotal,diskTotal,cpuFrequency,cpuPhysicalCores,netIdc,status -j").read()
    elif options.file:
      result=os.popen("meta-query entity host -f sysSuit,memTotal,diskTotal,cpuFrequency,cpuPhysicalCores,netIdc,status -F "+options.file+" -j").read()
    elif options.noah:
      result=os.popen("get_instance_by_service "+options.noah+" |meta-query entity host -f sysSuit,memTotal,diskTotal,cpuFrequency,cpuPhysicalCores,netIdc,status -F -j").read()
    else:
      return

    result=json.loads(result)
    print "%-*s%-*s%-*s%-*s%-*s%-*s"%(40,"Name",10,"CPU",10,"memery",10,"disk",10,"IDC",10,"status")
    for item in result:
      if item['Values']['cpuFrequency']!="null":
        item['Values']['cpuFrequency']=str(float(item['Values']['cpuFrequency'])/1000.0)[0:3]
      else:
        item['Values']['cpuFrequency']="0"
      item['Values']['diskTotal']=str(float(item['Values']['diskTotal'])/1000000000.0)[0:5]
      item['Values']['memTotal']=str(float(item['Values']['memTotal'])/1024/1000.0)[0:5]
      
      print "%-*s%-*s%-*s%-*s%-*s%-*s" % (40,item['Name'],10,item['Values']['cpuFrequency']+" x"+item['Values']['cpuPhysicalCores'],10,item['Values']['memTotal']+"G",10,item['Values']['diskTotal']+"T",10,item['Values']['netIdc'],10,item['Values']['status'])
  except Exception,e:
    return

if __name__ =="__main__":
  main()

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

相关文章

  • Python如何提取Word文档中的超链接

    Python如何提取Word文档中的超链接

    在数字化办公场景中,Word文档作为承载结构化信息的重要载体,常包含大量嵌入的超链接以关联外部资源或实现内容交互,下面我们看看如何使用Python实现批量提取这些超链接吧
    2025-03-03
  • Python包argparse模块常用方法

    Python包argparse模块常用方法

    argparse是python用于解析命令行参数和选项的标准模块。argparse模块的作用是用于解析命令行参数,通过实例代码讲解argparse的基本使用方法,感兴趣的朋友跟随小编一起看看吧
    2021-06-06
  • jupyter notebook 重装教程

    jupyter notebook 重装教程

    这篇文章主要介绍了jupyter notebook 重装教程,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-04-04
  • Python调用百度AI实现图片上表格识别功能

    Python调用百度AI实现图片上表格识别功能

    这篇文章主要给大家介绍了关于Python调用百度AI实现图片上表格识别功能的相关资料,在Python环境下,利用百度AI开放平台文字识别技术,对表格类图片进行识别,需要的朋友可以参考下
    2021-09-09
  • Python&Matlab实现炫酷的3D旋转图

    Python&Matlab实现炫酷的3D旋转图

    这篇文章主要为大家介绍了如何利用Python和Matlab分别实现酷炫的3D旋转图,文中的示例代码讲解详细,感兴趣的可以了解一下
    2022-04-04
  • Python实现获取本地及远程图片大小的方法示例

    Python实现获取本地及远程图片大小的方法示例

    这篇文章主要介绍了Python实现获取本地及远程图片大小的方法,结合实例形式分析了Python使用PIL、urllib2及cStringIO模块获取本机或远程图片大小信息的相关操作技巧,需要的朋友可以参考下
    2018-07-07
  • Python开启Http Server的实现步骤

    Python开启Http Server的实现步骤

    本文主要介绍了Python开启Http Server的实现步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-07-07
  • 简单谈谈Python中的闭包

    简单谈谈Python中的闭包

    一般来说闭包这个概念在很多语言中都有涉及,简单说,闭包就是根据不同的配置信息得到不同的结果,下面我们来专门讲下在Python中的闭包
    2016-11-11
  • PyQt6中自定义浮点型滑块类的实现

    PyQt6中自定义浮点型滑块类的实现

    在PyQt6中,滑块是常用的用户界面元素之一,用于选择数值范围,本文主要介绍了PyQt6中自定义浮点型滑块类的实现,具有一定的参考价值,感兴趣的可以了解一下
    2024-03-03
  • Python 中的lambda匿名函数和三元运算符

    Python 中的lambda匿名函数和三元运算符

    这篇文章主要介绍了Python 中的lambda匿名函数和三元运算符,使用关键字 ​​lambda​​ 定义,所以匿名函数又称之为lambda表达式,下面文章更多相关内容需要的小伙伴可以参考一下
    2022-04-04

最新评论