在Python中读取osx通知

时间:2017-11-08 09:52:32

标签: python macos python-2.7 automation

我需要在osx上阅读通知中心通知时启动一个应用程序。是否有用于阅读通知中心通知的python库?

1 个答案:

答案 0 :(得分:0)

注意:我没有尝试过这个,因为我现在没有运行OSX的机器,但是从我用Google搜索的内容:

您可以尝试在python代码中添加AppleScript代码段,该代码使用系统事件和通知中心来解析所有可用通知并将它们返回到您的标准输出并直接在您的代码中解析输出。

获取所有可用通知的来源:https://macosxautomation.com/mavericks/notifications/01A.html。您应该感兴趣的部分是getNotificationTitles函数的代码。不好的一点是,在该实现中,您只获得他们的标题,而不是完整的通知,因此您可能必须解析不同的区域才能获得完整的通知主体。

运行它并获得结果的来源:How do I embed an AppleScript in in a Python script?

另一种方法是使用terminal-notifier cli工具的 -list 参数(作为脚本中的shell命令),然后解析结果。

此工具还有python wrapper可用。该实现包含一个list()函数,它承诺只使用cli工具,只需要从你自己的代码中生成任何shell并解析它们的stdouts。