当前位置: 首页 > 编程笔记 >

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

封瑞
2023-03-14
本文向大家介绍Python获取电脑硬件信息及状态的实现方法,包括了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获取电脑的磁盘信息方法,包括了使用python获取电脑的磁盘信息方法的使用技巧和注意事项,需要的朋友参考一下 使用Python获取电脑的磁盘信息需要借助于第三方的模块psutil,这个模块需要自己安装,纯粹的CPython下面不具备这个功能。 在iPython交互界面中进行如下演示: 查看电脑的磁盘分区: 从上面的结果看出,电脑只有一个分区。针对最后的结果专门通过判断

  • 本文向大家介绍python获取各操作系统硬件信息的方法,包括了python获取各操作系统硬件信息的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了python获取各操作系统硬件信息的方法。分享给大家供大家参考。具体如下: 1. windows 使用WMI: (WMI官网地址:http://pypi.python.org/pypi/WMI 或 点击此处本站下载。) 运行结果如下: 2.

  • 本文向大家介绍C++获得文件状态信息的方法,包括了C++获得文件状态信息的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了C++获得文件状态信息的方法。分享给大家供大家参考。具体如下: 希望本文所述对大家的C++程序设计有所帮助。

  • 本文向大家介绍Python两台电脑实现TCP通信的方法示例,包括了Python两台电脑实现TCP通信的方法示例的使用技巧和注意事项,需要的朋友参考一下 为了实现Nao机器人与电脑端的TCP通信,于是研究了一下Python实现TCP通信,在网上也看到了很多例子,但大多都是在一台机器上验证。在两台机器上使用,出了一些小故障。 注意:若两台电脑通信出了问题,若能ping通!大部分是防火墙的问题。一开始A

  • 问题内容: 我正在开发向用户介绍设备的应用程序。我在SO上遇到了许多问题,但没有找到答案。我想找到 型号编号 Android版 基带版本 内核版本 内部编号 我的手机的RAM。 对于此Thankx,我将不胜感激。 问题答案: 我在代码中使用了它,所以我把所有内容都放了:

  • 本文向大家介绍C# 获取硬件参数的实现方法,包括了C# 获取硬件参数的实现方法的使用技巧和注意事项,需要的朋友参考一下 C# 获取硬件参数的实现方法 示例代码: 如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!