才知道python还可以这样发消息提醒的

之前一直以为 python 发消息,必须依赖第三方库,比如 plyer

今天使用AI编写消息提醒功能,才发现还可以这样玩的。

python 复制代码
import subprocess

ps_script = f'''
            Add-Type -AssemblyName System.Windows.Forms
            $global:balloon = New-Object System.Windows.Forms.NotifyIcon
            $path = (Get-Process -Id $pid).Path
            $balloon.Icon = [System.Drawing.Icon]::ExtractAssociatedIcon($path)
            $balloon.BalloonTipIcon = [System.Windows.Forms.ToolTipIcon]::Info
            $balloon.BalloonTipText = '提醒内容'
            $balloon.BalloonTipTitle = '提醒标题'
            $balloon.Visible = $true
            $balloon.ShowBalloonTip(10000)
            Start-Sleep -Seconds 10
            $balloon.Dispose()
            '''

# 执行PowerShell脚本
result = subprocess.run(
    ['powershell', '-Command', ps_script],
    capture_output=True,
    text=True,
    timeout=15
)

python 通过调用 powershell 脚本来让 powershell 发送消息,好巧妙啊。

相应的,也可以在 MacOSLinux 环境这样发消息。

python 复制代码
def _show_macos_notification(self, title, message):
    """在macOS系统显示通知"""
    try:
        script = f'display notification "{message}" with title "{title}"'
        subprocess.run(['osascript', '-e', script], timeout=5)
    except Exception as e:
        print(f"显示macOS通知失败: {e}")

def _show_linux_notification(self, title, message):
    """在Linux系统显示通知"""
    try:
        subprocess.run([
            'notify-send',
            title,
            message
        ], timeout=5)
    except Exception as e:
        print(f"显示Linux通知失败: {e}")

再配合上一个环境识别的 API ------ platform.system(),完全不依赖第三方,真完美!


好啦,今天就分享这个小技巧,欢迎三连哦!

相关推荐
love_summer几秒前
深入理解Python流程控制:从算法设计到顺序执行机制(附代码)
python
悟空码字几秒前
SpringBoot + Redis分布式锁深度剖析,性能暴涨的秘密全在这里
java·spring boot·后端
奋进的芋圆2 分钟前
Spring Boot中实现定时任务
java·spring boot·后端
山沐与山2 分钟前
【Python】深入理解Python Web框架:从Flask到FastAPI的并发之路
python·flask·fastapi
嫂子的姐夫3 分钟前
011-AES:深证信
爬虫·python·逆向
love530love6 分钟前
Flash Attention 2.8.3 在 Windows + RTX 3090 上成功编译与运行复盘笔记(2026年1月版)
人工智能·windows·笔记·python·flash_attn·flash attention·z-image
BD_Marathon8 分钟前
Spring——容器
java·后端·spring
@zulnger12 分钟前
python 学习笔记(异常对象)
笔记·python·学习
武子康14 分钟前
大数据-206 用 NumPy 矩阵乘法手写多元线性回归:正规方程、SSE/MSE/RMSE 与 R²
大数据·后端·机器学习
小王和八蛋15 分钟前
负载均衡之DNS轮询
后端·算法·程序员