Чтение температуры процессора из операционной системы Windows 10 с помощью Python
Я знаю, что этот вопрос задавался много раз, я даже пытался большинство из них, но я не удовлетворен результатами, которые я получаю.
Прежде всего я объясню свою проблему. Я попытался следующий код, чтобы получить температуру процессора (работает в режиме администратора):
import wmi
w = wmi.WMI(namespace="root\\wmi")
print ((w.MSAcpi_ThermalZoneTemperature()[0].CurrentTemperature / 10) - 273.2)
Всякий раз, когда я запускаю код, я получаю 25 в результате. Я пытался увеличить температуру процессора, открыв множество тяжелых приложений. Хотя значение не изменилось.
Я попытался проверить это значение с помощью другого программного обеспечения с открытым исходным кодом под названием "Open Hardware Monitor", где температура меняется каждую секунду, и она была между 50 и 60.
Я попробовал следующий код также. Результат такой же, как и раньше (25):
from pyspectator.processor import Cpu
from time import sleep
cpu = Cpu(monitoring_latency=1)
while True:
print (cpu.temperature)
sleep(1)
Я даже попробовал следующий код. Ничего не отображает
import wmi
w = wmi.WMI(namespace="root\OpenHardwareMonitor")
temperature_infos = w.Sensor()
for sensor in temperature_infos:
if sensor.SensorType==u'Temperature':
print(sensor.Name)
print(sensor.Value)
Теперь подходит к моему вопросу.
- Является ли 25 правильным значением? Если да, то как увеличить / уменьшить температуру процессора? (чтобы проверить результат)
- Какой будет нормальная и максимальная температура процессора?
- Почему программное обеспечение "Open Hardware Monitor" показывает другое значение?
Дополнительное примечание: я использую Python 3.6, Windows 10, процессор - Intel Core i7