Skrip kecil untuk mengesahkan akaun gmail

Kami berkongsi program kecil yang ditulis dalam Python yang objektifnya adalah untuk mengesahkan jumlah e-mel yang belum dibaca dari akaun gmail. Saya harap anda menikmatinya ...

Sumbangan lain dari Luis López menjadikannya salah satu pemenang pertandingan mingguan kami: «Kongsi apa yang anda tahu mengenai Linux«. Tahniah Luis!
Perhatian: perlu memasang notifikasi-kirim agar program berfungsi dengan baik.

Sekiranya anda ingin memuat turunnya, kod sumber yang dipaparkan di bawah tersedia di github: https://gist.github.com/3910908

#! / usr / bin / env python

# Program ini adalah perisian percuma: anda boleh mengagihkannya dan / atau mengubah suai
# di bawah syarat-syarat Lesen Awam Umum GNU seperti yang diterbitkan oleh
# Yayasan Perisian Percuma, sama ada versi 3 dari Lesen, atau
# (mengikut pilihan anda) versi lain.
#
# Program ini diedarkan dengan harapan dapat bermanfaat,
# tetapi TANPA JAMINAN; tanpa jaminan tersirat dari
# KELEBIHAN atau KESESUAIAN UNTUK TUJUAN TERTENTU. Lihat
# GNU General Public License untuk maklumat lebih lanjut.
#
# Anda semestinya telah menerima salinan GNU General Public License
# bersama dengan program ini. Sekiranya tidak, lihat .
################################################# #########
# Dicipta oleh Luis Lopez
# GmailPypy v1.0
# note: Anda mesti memasang notify-send.
################################################# #########


dari Permintaan import urllib2, urlopen
dari pengekodan import base64
dari carian semula import
dari sistem import os

# Kelayakan GMail
pengguna = "your_usuario@gmail.com"
passwd = "kata laluan_anda :)"

# Buat objek permintaan dan tambahkan tajuk Pengesahan
request = Request ("https://mail.google.com/mail/feed/atom")
base64str = encodestring ("% s:% s"% (pengguna, passwd)). ganti ("n", "")
request.add_header ("Keizinan", "Basic% s"% base64str)

# Dapatkan respons GMail athom
cuba:
   respons = urlopen (permintaan)
kecuali:
   tindak balas = Tiada
   msg = "Kesalahan yang tidak dijangka semasa mendapatkan maklumat. Sila periksa sambungan anda atau kelayakan GMail."

# Dapatkan jumlah E-mel yang belum dibaca
jika tindak balas Tiada:
   dipadankan = Tiada
lain:
   dipadankan = carian (r "(? Pd +)", respon. baca ())

# Buat mesej untuk dipaparkan
jika dipadankan Tiada atau int (matched.group ("belum dibaca")) == 0:
   msg = Tiada
lain:
   msg = "Found" + str (matched.group ("belum dibaca")) + "e-mel yang belum dibaca"

# Tunjukkan pemberitahuan Pop-up dengan mesej
jika msg Tiada:
   lulus
lain:
   notify = "notify-send -u normal 'GMailn% s'"% msg
   sistem (maklumkan)

Jangan lupa untuk mengedit nilai pengguna dan pemboleh ubah passwd dengan nama pengguna dan kata laluan gmail anda.

Sekiranya anda mahu menambahkannya ke crontab:

1.- Mereka membuka fail crontab pengguna mereka (pengguna saya lucho)

crontab -u saya melawan -e

2.- Mereka mengeditnya dengan menambahkan baris seperti ini dan simpan

* / 10 * * * * env DISPLAY =: 0.0 /path/to/file/pygmail.py

Ini akan menyebabkan program berjalan sekali setiap 10 minit, dan pop timbul akan muncul pada DISPLAY =: 0.0.

Terima kasih Luis López!
Adakah anda ingin menyertai pertandingan bulanan kami dan memberi sumbangan kepada masyarakat?
Anda hanya perlu menghantar kepada kami a mail termasuk tipu daya atau tutorial mini anda sendiri.