Wie sende ich Desktop-Benachrichtigungen mit Python 3?


11

Ich habe ein Python3.4-Skript. Ich möchte eine Benachrichtigung an den Desktop senden. Wie gehe ich in Python damit um? Kann ich notify-send verwenden?

Ich benutze Ubuntu 14.04.

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

Antworten:


20

Sie können notify-sendals externen Befehl verwenden:

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

Oder Sie können das notify2Modul ( sudo apt install python3-notify2) verwenden:

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

Das Paket enthält weitere Beispiele (siehe /usr/share/doc/python3-notify2/examples/).


@sgiri Ich dachte, die externe Bibliothek wäre besser als ein Unterprozess. In beiden Fällen müssen Sie trotzdem etwas installieren.
Hey

@YdobEmos subprocessist die Standardbibliothek, die mit Python verteilt wird. Daher ist es nicht erforderlich, es als Bibliothek eines Drittanbieters zu installieren. [Ref: Docs.python.org/2/library/index.html]
Sgiri

Sie müssen die Paketlieferung installieren notify-send. Oder zumindest auf Kubuntu muss man. Vielleicht wird es standardmäßig unter Ubuntu bereitgestellt, in diesem Fall ist es in der Tat die beste Lösung.
Hey
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.