Как я отправляю настольные уведомления с помощью Python 3?

У меня есть python3.4 сценарий. Я хотел бы отправить в рабочий стол уведомление. Как я обрабатываю это в Python? Могу я использовать уведомить - отправляют?

Я использую Ubuntu 14.04.

#in my script
if something:
  notify-send 'Here is a notification !'
8
задан 20 July 2017 в 04:59

2 ответа

Можно использовать notify-send как внешняя команда:

import subprocess as s
s.call(['notify-send','foo','bar'])

Или можно использовать notify2 модуль (sudo apt install python3-notify2):

import notify2
notify2.init('foo')
n = notify2.Notification('foo', 'bar')
n.show()

существует больше примеров, включенных в пакет (см. /usr/share/doc/python3-notify2/examples/).

17
ответ дан 23 November 2019 в 05:26

Специальных зависимостей не требуется. В любом случае это обертки вокруг dbus.

import dbus

bus_name = "org.freedesktop.Notifications"
object_path = "/org/freedesktop/Notifications"
interface = bus_name

notify = dbus.Interface(dbus.SessionBus().get_object(bus_name, object_path), interface)
notify.Notify(ARGS)

Аргументы см. в спецификациях.

1
ответ дан 19 December 2020 в 20:02

Другие вопросы по тегам:

Похожие вопросы: