J'ai écrit un code Python pour récupérer un texte aléatoire dans un fichier .txt. Maintenant, je veux envoyer ce texte aléatoire dans la zone de notification via la commande 'notify-send'. Comment faire ?
Réponses
Trop de publicités?Python3
Alors que vous pouvez appeler notify-send
via os.system
oder subprocess
il est sans doute plus cohérent avec la programmation basée sur GTK3 d'utiliser l'option Notify gobject-introspection classe.
Un petit exemple illustrera ce principe :
from gi.repository import GObject
from gi.repository import Notify
class MyClass(GObject.Object):
def __init__(self):
super(MyClass, self).__init__()
# lets initialise with the application name
Notify.init("myapp_name")
def send_notification(self, title, text, file_path_to_icon=""):
n = Notify.Notification.new(title, text, file_path_to_icon)
n.show()
my = MyClass()
my.send_notification("this is a title", "this is some text")
Pour répondre à la question de Mehul Mohan et proposer le moyen le plus court de pousser une notification avec les sections titre et message :
import os
os.system('notify-send "TITLE" "MESSAGE"')
La mise en place de cette fonction pourrait être un peu confuse en raison des guillemets dans les guillemets.
import os
def message(title, message):
os.system('notify-send "'+title+'" "'+message+'"')
Pour tous ceux qui s'intéressent à ce sujet en 2018, je peux recommander le document suivant notifier2 l'emballage.
Il s'agit d'un remplacement pur-Python pour notify-Python, qui utilise Python-dbus pour communiquer directement avec le serveur de notifications. Il est compatible avec Python 2 et 3, et ses rappels peuvent fonctionner avec les applications Gtk 3 ou Qt 4.
- Réponses précédentes
- Plus de réponses