Files
caotek_monaa/gmail_caotek_purge.py

51 lines
1.3 KiB
Python

# -*- coding: utf8 -*-
#
# Compter les emails BEFORE DATE
#
from pprint import pprint
import datetime
import imaplib
# connecter au serveur IMAP
conn = imaplib.IMAP4_SSL('imap.gmail.com')
conn.login('phuoc@caotek.fr', 'pcao.8211')
# lister les dossiers
typ, data = conn.list()
print('Liste des dossiers :')
pprint(data)
# delete mails before 14 years
before_date = (datetime.date.today() - datetime.timedelta(365.25 * 13)).strftime("%d-%b-%Y")
print("Delete emails before " + before_date)
# select ALL
conn.select('INBOX')
rv, data = conn.search(None, '(BEFORE {0})'.format(before_date))
nb_mails = str(len(data[0]))
print(nb_mails + " emails founded")
resp = input ("Enter 'c' to continue, or 'a' to abort : ")
if resp=="c":
print("Moving " + nb_mails + " emails to Trash")
messages = data[0].split(b' ')
for mail in messages:
# move to trash
conn.store(mail, '+X-GM-LABELS', '\\Trash')
#This block empties trash, remove if you want to keep, Gmail auto purges trash after 30 days.
print("Emptying Trash & Expunge...")
conn.select('[Gmail]/Corbeille')
conn.store("1:*", '+FLAGS', '\\Deleted')
# delete all the selected messages
conn.expunge()
print("Script completed")
else:
print("Script aborted")
# deconnexion du serveur
conn.close()
conn.logout()