В современном мире, где портативные устройства являются неотъемлемой частью нашей жизни, отслеживание уровня заряда батареи имеет решающее значение. Независимо от того, создаете ли вы мобильное приложение, отслеживаете энергопотребление устройства или просто интересуетесь временем автономной работы вашего ноутбука, Python предоставляет множество методов для получения процента заряда батареи. В этой статье мы рассмотрим несколько простых и практичных способов получить процент заряда батареи, используя примеры кода Python. Так что хватайте свое программирующее оборудование и приступайте!
Метод 1: библиотека psutil
Одна из самых популярных и универсальных библиотек для мониторинга системы в Python — psutil. Он предлагает широкий спектр функций, включая поиск информации, связанной с аккумулятором. Чтобы узнать процент заряда батареи с помощью psutil, выполните следующие действия:
import psutil
battery = psutil.sensors_battery()
percentage = battery.percent
print(f"Battery Percentage: {percentage}%")
Метод 2: модуль WMI (только для Windows)
Если вы работаете в системе Windows, вы можете использовать модуль WMIдля доступа к информации о батарее. Вот пример:
import wmi
c = wmi.WMI()
battery = c.Win32_Battery()[0]
percentage = battery.EstimatedChargeRemaining
print(f"Battery Percentage: {percentage}%")
Метод 3: команды, специфичные для платформы
Python обеспечивает гибкость для выполнения команд, специфичных для платформы, с помощью модуля subprocess. Вы можете использовать это для получения информации о батарее из командной строки. Вот примеры для Windows, macOS и Linux:
Windows:
import subprocess
output = subprocess.check_output('WMIC PATH Win32_Battery Get EstimatedChargeRemaining').decode().split("\r\n")[1]
percentage = int(output)
print(f"Battery Percentage: {percentage}%")
macOS:
import subprocess
output = subprocess.check_output("pmset -g batt | grep -o '[0-9]*%'", shell=True).decode().strip("%\n")
percentage = int(output)
print(f"Battery Percentage: {percentage}%")
Linux:
import subprocess
output = subprocess.check_output("upower -i /org/freedesktop/UPower/devices/battery_BAT0 | grep -E 'percentage' | awk '{ print $2 }'", shell=True).decode().strip("%\n")
percentage = int(output)
print(f"Battery Percentage: {percentage}%")
В этой статье мы рассмотрели несколько методов получения процента заряда батареи с помощью Python. Мы рассмотрели библиотеку psutil, модуль WMI(для Windows) и команды, специфичные для платформы, с использованием модуля subprocess. В зависимости от ваших требований и платформы, над которой вы работаете, вы можете выбрать наиболее подходящий метод интеграции мониторинга батареи в ваши проекты Python. Оставайтесь с нами и никогда больше не будьте застигнуты врасплох разряженной батареей!