zl程序教程

您现在的位置是:首页 >  后端

当前栏目

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

Python方法状态 实现 获取 信息 电脑硬件
2023-06-13 09:15:44 时间

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

主要功能代码如下:

#!/usr/bin/envpython
#encoding:utf-8

fromoptparseimportOptionParser
importos
importre
importjson

defmain():
try:
parser=OptionParser(usage="%prog[options]")
reg_result=re.compile("\[(.*)\]")
#addoption
parser.add_option("-m","--machine",action="store",type="string",dest="machine",help="themachinetobecheck")
parser.add_option("-f","--file",action="store",type="string",dest="file",help="thefilewithmachinelist")
parser.add_option("-n","--noah_path",action="store",type="string",dest="noah",help="thebnspathorgroup")
(options,args)=parser.parse_args()

result=""
ifoptions.machine:
options.machine=options.machine.replace(".baidu.com","")
result=os.popen("meta-queryentityhost"+options.machine+"-fsysSuit,memTotal,diskTotal,cpuFrequency,cpuPhysicalCores,netIdc,status-j").read()
elifoptions.file:
result=os.popen("meta-queryentityhost-fsysSuit,memTotal,diskTotal,cpuFrequency,cpuPhysicalCores,netIdc,status-F"+options.file+"-j").read()
elifoptions.noah:
result=os.popen("get_instance_by_service"+options.noah+"|meta-queryentityhost-fsysSuit,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")
foriteminresult:
ifitem["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"])
exceptException,e:
return

if__name__=="__main__":
main()

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