У меня есть python3.4 сценарий. Я хотел бы отправить в рабочий стол уведомление. Как я обрабатываю это в Python? Могу я использовать уведомить - отправляют?
Я использую Ubuntu 14.04.
#in my script
if something:
notify-send 'Here is a notification !'
Можно использовать 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/
).
Специальных зависимостей не требуется. В любом случае это обертки вокруг 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)
Аргументы см. в спецификациях.