Python Forum

Full Version: print CPU temperature
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2
But be careful, enum34 causes problems in Linux, I don't know how it is in Windows.
Not working here, at least in Win7. It relies on Powershell or WinAPI instructions which might vary with versions installed.

Added: It does install here on Python3.8. Its just not functional With Powershell5 and its WinApi.
try psutil

import sys

import psutil


def main():
    if not hasattr(psutil, "sensors_temperatures"):
        sys.exit("platform not supported")
    temps = psutil.sensors_temperatures()
    if not temps:
        sys.exit("can't read any temperature")
    for name, entries in temps.items():
        print(name)
        for entry in entries:
            print("    %-20s %s °C (high = %s °C, critical = %s °C)" % (
                entry.label or name, entry.current, entry.high,
                entry.critical))
        print()


if __name__ == '__main__':
    main()
Output:
coretemp Package id 0 34.0 °C (high = 82.0 °C, critical = 102.0 °C) Core 0 31.0 °C (high = 82.0 °C, critical = 102.0 °C) Core 1 35.0 °C (high = 82.0 °C, critical = 102.0 °C) w83667hg AUXTIN 35.0 °C (high = -1.0 °C, critical = -1.0 °C) PECI Agent 1 31.0 °C (high = 0.0 °C, critical = None °C) SYSTIN 29.0 °C (high = 0.0 °C, critical = None °C)
Pages: 1 2