Petit script pour vérifier les comptes Gmail

Nous partageons un petit programme écrit en Python dont l'objectif est de vérifier le montant de e-mails non lus à partir d'un compte de Gmail. J'espère que ça vous plait…

Une autre contribution de Luis López fait de lui l'un des gagnants de notre concours hebdomadaire: «Partagez ce que vous savez sur Linux«. Félicitations Luis!
Attention: il est nécessaire d'installer notify-send pour que le programme fonctionne correctement.

Si vous souhaitez le tĂ©lĂ©charger, le code source ci-dessous est disponible sur GitHub : https://gist.github.com/3910908

#! / usr / bin / env python

# Ce programme est un logiciel libre: vous pouvez le redistribuer et / ou le modifier
# sous les termes de la GNU General Public License telle que publiée par
# la Free Software Foundation, soit la version 3 de la licence, soit
# (à votre choix) toute version ultérieure.
#
# Ce programme est distribué dans l'espoir qu'il sera utile,
# mais SANS AUCUNE GARANTIE; sans mĂŞme la garantie implicite de
# QUALITÉ MARCHANDE ou ADAPTATION À UN USAGE PARTICULIER. Voir le
# Licence publique générale GNU pour plus de détails.
#
# Vous devriez avoir reçu une copie de la licence publique générale GNU
# avec ce programme. Sinon, voir .
################################################ #########
# Créé par Luis Lopez
# GmailPypy v1.0
# remarque: vous devez installer notify-send.
################################################ #########


Ă  partir de la demande d'importation urllib2, urlopen
Ă  partir de l'encodage d'importation base64
depuis réimporter la recherche
à partir du système d'importation OS

# Identifiants GMail
utilisateur = "[email protected]"
passwd = "votre_mot_de_passe :)"

# Créez l'objet de requête et ajoutez l'en-tête Authorization
request = Request ("https://mail.google.com/mail/feed/atom")
base64str = chaîne d'encodage ("% s:% s"% (utilisateur, passwd)). replace ("n", "")
request.add_header ("Autorisation", "Basique% s"% base64str)

# Obtenez la réponse GMail athom
Essai:
   response = urlopen (requĂŞte)
sauf:
   response = Aucun
   msg = "Erreur inattendue lors de l'obtention des informations. Veuillez vĂ©rifier votre connexion ou vos informations d'identification GMail."

# Obtenez le nombre d'emails non lus
si la réponse est Aucune:
   appariĂ© = Aucun
autre:
   matched = recherche (r "(? Pd +)", response.read ())

# Créer un message à afficher
si la correspondance est None ou int (matched.group ("uneaded")) == 0:
   msg = Aucun
autre:
   msg = "TrouvĂ©" + str (matched.group ("non lu")) + "email (s) non lu (s)"

# Afficher une notification contextuelle avec le message
si msg est Aucun:
   pass
autre:
   notify = "notifier-envoyer -u normal 'GMailn% s'"% msg
   système (notifier)

N'oubliez pas de modifier la valeur de l'utilisateur et les variables passwd avec votre nom d'utilisateur et votre mot de passe gmail.

Si vous souhaitez l'ajouter Ă  crontab:

1. Ouvrez le fichier crontab de votre utilisateur (mon nom d'utilisateur est lucho).

crontab -u je me bats -e

2. Modifiez-le en ajoutant une ligne comme celle-ci et enregistrez.

* / 10 * * * * env DISPLAY =: 0.0 /chemin/vers/fichier/pygmail.py

Cela entraînera l'exécution du programme une fois toutes les 10 minutes, et la fenêtre contextuelle apparaîtra à DISPLAY =: 0.0.

Merci Luis LĂłpez!
Souhaitez-vous participer à notre concours mensuel et apporter une contribution à la communauté?
Il vous suffit de nous envoyer un courrier y compris l'astuce ou le mini-tutoriel de votre choix.

Ajouter comme source préférée dans Google