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.