使用Python实现笔记本电脑电池充电或电池放电时语音提醒
python吧
全部回复
仅看楼主
level 4
科技小郑 楼主
适用操作系统:window、Linux、MacOS、以及其他已安装python语言的计算机操作系统
功能描述:笔记本电脑接入电源线语音提醒一次,拔掉电源线使用电池模式语音提醒一次,可重复执行。
配置内容:需要安装的第三方库:psutil、pyttsx3,安装方法:pip install psutil,pip install pyttsx3。
import psutil
import pyttsx3
import time
engine = pyttsx3.init() # 初始化语音引擎
engine.setProperty('volume', 0.65)
engine.setProperty('rate', 120)
battery_info = psutil.sensors_battery() # 获取电池信息
is_charging = battery_info.power_plugged # 判断是否正在充电,这里假设电池的power_plugged属性为True表示正在充电
battery_percent = battery_info.percent # 获取电池电量百分比
charging_text = "正在进行充电!" # 定义充电时的文本
##not_charging_text = f"当前电量为百分之{battery_percent},已退出充电!" # 定义非充电时的文本
if is_charging: # 检查电池是否正在充电,并在满足条件时自动播放充电语音通知
engine.say(charging_text) # 通过语音引擎播报正在充电的信息
engine.runAndWait() # 立即执行语音播报
while True: # 无限循环,持续监控电池状态
battery_info = psutil.sensors_battery() # 获取电池信息
battery_percent = battery_info.percent # 获取电池电量百分比
not_charging_text = f"当前电量为百分之{battery_percent},已退出充电!" # 定义非充电时的文本
if psutil.sensors_battery().power_plugged != is_charging: # 如果当前是否充电的状态与上一次不同
is_charging = not is_charging # 更新是否正在充电的状态
if is_charging: # 如果开始充电
engine.say(charging_text) # 通过语音引擎播报正在充电的信息
engine.runAndWait() # 立即执行语音播报
else:
engine.say(not_charging_text) # 如果既不是充电状态,也不是满电状态,则播报非充电状态的信息
engine.runAndWait() # 立即执行语音播报
time.sleep(1) # 每次循环休眠1秒,以降低CPU使用率
2024年01月02日 03点01分 1
level 4
科技小郑 楼主
2024年01月02日 03点01分 2
level 4
科技小郑 楼主
要在windows操作系统中运行上面py文件,还需要进行以下操作:
第一步,在py文件所在目录下alt+d → cmd,输入命令行:PyInstaller -F --windowed python_batteryFullPower.py
第二步,win+R → taskschd.msc 添加exe文件为启动项,并设定为开机启动,重新启动你的计算机。
第三步,重启计算机后,Ctrl + Shift + ESC 调出任务管理器查看文件是否在后台自动运行,进程中有出现添加的exe文件说明程序运行正常。
2024年01月02日 03点01分 3
level 1
先收藏[大拇指]
2024年01月02日 17点01分 4
level 4
科技小郑 楼主
使用windows任务计划程序开机自启动程序太糟糕经常无法正常开机运行。这里改为使用windows操作系统核心部件注册表来解决这个问题:
第一步,删除之前在windows任务计划程序中设定的exe文件启动项
第二步,转至打包的exe文件所在目录,Alt+鼠标左键双击exe文件,在安全选项卡的顶部有个对象名称复制这个路径
第三步,win+r → regedit → \HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Run → 在Run所在目录的右侧窗口,右键 → 新建 → 字符串值 → 双击新建文件,在数值数据处粘贴指定的exe文件路径,在后面添加一个参数-autorun。例:"C:\python_batteryFull\dist\python_batteryFull.exe" -autorun,重新启动计算机
2024年01月06日 01点01分 5
你好 请问我为什么无法封装呢
2024年07月18日 22点07分
使用PyInstaller在python3·11的环境 打包pyttsx3就失败 得不到可执行文件
2024年07月18日 22点07分
level 10
3
2024年08月02日 10点08分 6
level 9
engine这个变量是类还是什么
2024年08月04日 12点08分 7
level 7
3
2024年11月17日 01点11分 8
level 7
3
2024年11月17日 01点11分 9
level 7
3
2024年11月17日 01点11分 10
1