作者環境爲python3
GetHardwareInfo.py
import psutil
import os
class HardwareInfo(object):
def __init__(self):
self.disk_total = 0
self.disk_used = 0
self.disk_free = 0
self.disk_percent = 0
self.ram_total = 0
self.ram_used = 0
self.ram_available = 0
self.ram_percent = 0
self.cpu_percent = 0
self.temperatures = 0
self.file_size = 0
def getHardwareInfo(disk, file_path):
d = psutil.disk_usage(disk)
h = HardwareInfo()
h.disk_total = int(d.total/1024/1024)
h.disk_used = int(d.used/1024/1024)
h.disk_free = int(d.free/1024/1024)
h.disk_percent = d.percent
r = psutil.virtual_memory()
h.ram_total = int(r.total/1024/1024)
h.ram_used = int(r.used/1024/1024)
h.ram_available = int(r.available/1024/1024)
h.ram_percent = r.percent
h.cpu_percent = psutil.cpu_percent()
h.temperatures = psutil.sensors_temperatures()
h.file_size = os.path.getsize(file_path)/1024/1024
return h
test.py
'''
配置psutil $sudo pip install psutil
print(ghi.getHardwareInfo('/', '/home/room304/lichengyuan/make_voc2007.py').disk_used)
第一個參數爲硬盤編號,可以通過psutil.disk_partitions()獲得
第二個參數爲需要監測大小的文件路徑
s = ghi.getHardwareInfo('/', '/home/room304/lichengyuan/make_voc2007.py')
所有參數單位爲M
s.disk_total 硬盤大小
s.disk_used 已使用硬盤大小
s.disk_free 未使用硬盤大小
s.disk_percent 硬盤使用率
s.ram_total 內存大小
s.ram_used 已使用內存大小
s.ram_available 可以使用的內存大小
s.ram_percent 內存使用率
s.cpu_percent cpu使用率
s.temperatures 硬件溫度,結構體
s.file_size 監測的文件大小
'''
import GetHardwareInfo as ghi
print(ghi.getHardwareInfo('/', '/home/xx/xx/xx.py').disk_used)