程序员文章、书籍推荐和程序员创业信息与资源分享平台

网站首页 > 技术文章 正文

用Python写一个MacOS的系统通知

hfteth 2025-01-21 17:55:22 技术文章 40 ℃

本文使用Python的 Plyer 模块在MacOS下发送系统级的通知

Plyer是啥?

Plyer是Python的一个模块,可以访问硬件的一些功能,而且支持多种平台(Mac/Win),对移动端(Android、iOS)有着更好的支持。

可以对系统级(底层)进行操作,比如蓝牙,电池,定位,通知等等,具体参考下表:

正式开始,下面就用用Plyer模块在Macos上发送系统消息,实现定时器和通知功能,用来提醒长期久坐的同学们站起来活动活动!

操作系统/运行环境:

  • MacOS Big Sur 版本:11.2.3
  • Python 3.9.5

先上代码,代码很简单,15行不到:

import time
from plyer import notification

if __name__ == "__main__":
    while True:
        notification.notify(
            title="Python 通知!",
            app_name="---嗷嗷---",
            message="已经工作半分钟了,站起来溜达溜达吧!",
            timeout=10
        )
        time.sleep(30)

安装 plyer 包

pip3 install plyer -i https://mirrors.cloud.tencent.com/pypi/simple

MacOS下运行上述脚本会有报错:

ModuleNotFoundError: No module named 'pyobjus'

详细报错:

Traceback (most recent call last):

File "/opt/homebrew/lib/python3.9/site-packages/plyer/utils.py", line 96, in _ensure_obj

mod = __import__(module, fromlist='.')

File "/opt/homebrew/lib/python3.9/site-packages/plyer/platforms/macosx/notification.py", line 7, in <module>

from pyobjus import (

ModuleNotFoundError: No module named 'pyobjus'

Traceback (most recent call last):

File "t.py", line 6, in <module>

notification.notify(

File "/opt/homebrew/lib/python3.9/site-packages/plyer/facades/notification.py", line 84, in notify

self._notify(

File "/opt/homebrew/lib/python3.9/site-packages/plyer/facades/notification.py", line 93, in _notify

raise NotImplementedError("No usable implementation found!")

NotImplementedError: No usable implementation found!

缺啥装啥,继续

pip3 install pyobjus -i https://mirrors.cloud.tencent.com/pypi/simple

好再次运行Python脚本,看看情况:

OK,先这样吧,既然已经辛苦工作半分钟了,那就站起来活动活动吧,休息,休息一下:)

Tags:

最近发表
标签列表