示例代码
# coding=utf-8
import clr # pythonnet 提供的模块
import os
# 添加 OpenHardwareMonitorLib.dll 的路径
clr.AddReference(os.path.abspath("OpenHardwareMonitorLib.dll"))
# 导入 Open Hardware Monitor 的命名空间
from OpenHardwareMonitor import Hardware
# 创建硬件监控器实例
hardware_monitor = Hardware.Computer()
hardware_monitor.CPUEnabled = True # 启用 CPU 监控
# hardware_monitor.GPUEnabled = False # 启用 GPU 监控
hardware_monitor.HDDEnabled = True # 启用硬盘监控
# hardware_monitor.MainboardEnabled = True # 启用主板监控
# hardware_monitor.RAMEnabled = True # 启用内存监控
# hardware_monitor.FanControllerEnabled = True # 启用风扇监控
# 初始化硬件监控器
hardware_monitor.Open()
# 获取硬件信息
for hardware_item in hardware_monitor.Hardware:
hardware_item.Update() # 更新硬件状态
print(f"硬件名称: {hardware_item.Name}")
for sensor in hardware_item.Sensors:
if sensor.SensorType == Hardware.SensorType.Temperature and "CPU Core" not in sensor.Name:
print(f" 传感器: {sensor.Name}, 温度: {int(sensor.Value)}°C")
elif sensor.SensorType == Hardware.SensorType.Load and "CPU Core" not in sensor.Name and "CPU Total" in sensor.Name:
print(f" 传感器: {sensor.Name}, 加载: {int(sensor.Value)}%")
elif sensor.SensorType == Hardware.SensorType.Clock and "Bus Speed" not in sensor.Name:
print(f" 传感器: {sensor.Name}, 频率: {int(sensor.Value)}MHz")
print("----------")
# 关闭硬件监控器
hardware_monitor.Close()
输出结果
