如何在Python中获取CPU温度?
可能的重复:
使用Python获取CPU温度?
最简单的方法是什么?也最好以摄氏度为单位。
Possible Duplicate:
Getting CPU temperature using Python?
What is the simplest method of going about this? Also preferably in Celsius.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
没有用于此目的的标准 Python 库,但在各种平台上,您可以使用与平台 API 的 Python 桥来访问此信息。
例如,在 Windows 上,这可以通过 Windows Management Instrumentation (WMI) API 获得,Python 可以通过 PyWin32 获得这些 API库。甚至还有一个 Python WMI 库,它包装了 PyWin32 以提供更方便的界面。要获取温度,您需要使用这些库之一来访问 root/WMI 命名空间和 MSAcpi_ThermalZone 温度类。这给出了十分之一开尔文的温度,因此您需要通过减去 2732 再除以 10 来转换为摄氏度。
恐怕不确定 Linux 或 Mac,但可能有您可以使用的等效库。快速谷歌表明,如果您的发行版支持 proc 虚拟文件系统来访问内核信息,那么 /proc/acpi/Thermal_zone/THM/Temperature 可能就是您所追求的。
There's no standard Python library for this, but on various platforms you may be able to use a Python bridge to a platform API to access this information.
For example on Windows this is available through the Windows Management Instrumentation (WMI) APIs, which are available to Python through the PyWin32 library. There is even a Python WMI library which wraps PyWin32 to provide a more convenient interface. To get the temperature you'll need to use one of these libraries to access the root/WMI namespace and the MSAcpi_ThermalZone Temperature class. This gives the temperature in tenths of a Kelvin, so you'll need to convert to Celsius by deducting 2732 and dividing by 10.
Not sure about about Linux or Mac I'm afraid, but there may be equivalent libraries you can use. A quick Google indicated that /proc/acpi/thermal_zone/THM/temperature may be what yoiu're after if your distro supports the proc virtual filesystem for accessing kernel information.
在 Linux 上,该信息位于 /proc/acpi/Thermal_zone/ 中
On Linux, that info is in /proc/acpi/thermal_zone/