import psutil

def get_all_temperatures():
    try:
        # 获取传感器信息
        temps = psutil.sensors_temperatures()
        if not temps:
            print("没有传感器信息")
            return

        # 打印传感器信息
        for name, entries in temps.items():
            print(f"{name}:")
            for entry in entries:
                # 为不同的传感器提供详细描述
                if name == "coretemp":
                    label = entry.label or "CPU 核心"
                elif name == "acpitz":
                    label = entry.label or "主板温度"
                else:
                    label = entry.label or "温度"

                print(f"  {label}: {entry.current}°C (高温: {entry.high}°C, 临界温度: {entry.critical}°C)")

    except Exception as e:
        print(f"获取温度失败: {e}")

if __name__ == "__main__":
    get_all_temperatures()