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


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

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

#in my script
if something:
  notify-send 'Here is a notification !'

5
2018-05-01 17:38


происхождения




ответы:


Вы можете использовать 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/).


10
2018-05-01 18:02



@sgiri Я думал, что внешняя библиотека будет лучше, чем подпроцесс. В любом случае вам все равно нужно что-то установить. - Arno
@YdobEmos, subprocess это стандартная библиотека, которая распространяется вместе с Python. Следовательно, нет необходимости устанавливать его в качестве сторонней библиотеки. [Ссылка: docs.python.org/2/library/index.html] - sgiri
Вам необходимо установить пакетную поставку notify-send, Или, по крайней мере, на Кубунту вы должны. Возможно, он предоставляется по умолчанию на Ubuntu, и в этом случае это действительно лучшее решение. - Arno