diff options
Diffstat (limited to 'count_email.py')
| -rwxr-xr-x | count_email.py | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/count_email.py b/count_email.py new file mode 100755 index 0000000..6b51971 --- /dev/null +++ b/count_email.py @@ -0,0 +1,29 @@ +#!/usr/bin/env python + +# A small script to pull unread email counts from servers in .authinfo + +from imaplib import IMAP4_SSL +from subprocess import check_output + +# Server +servers=["posteo","gmail"] +result = [] +# Decrypt the file, split the lines +data = check_output(["gpg","--decrypt",".authinfo.gpg"]).decode('utf-8').split('\n') +# Collect results +for server in servers: + # Get password and username + line = [l for l in data if ("imap" in l and server in l)][0].split() + host,user,password = line[1], line[3], line[5] + # Login + imap = IMAP4_SSL(host) + imap.login(user,password) + imap.select("INBOX", 1) + # Count emails + _, res = imap.search(None, "UNSEEN") + count = len(res[0].split()) + imap.logout() + # Store count if there's something + if count>0: result.append(user+": "+str(count)) +# What did we find +print(", ".join(result)) |
