summaryrefslogtreecommitdiff
path: root/emailcanary/emailutils.py
blob: 6646c1ee2773e84a3513d9d6caba6c341e36f765 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
import imaplib, email

def get_imap(account):
	'''Connect and login via IMAP'''
	mail = imaplib.IMAP4_SSL(account[0])
	mail.login(account[1],  account[2])
	return mail

def get_mail_uids(mail):
	'''Return a list of message UIDs in the inbox'''
	mail.select("inbox") # connect to inbox.
	result, data = mail.uid('search', None, "ALL") # search and return uids instead
	return data[0].split()

def get_message(mail, uid):
	'''Get a single email message object by UID'''
	result, data = mail.uid('fetch', uid, '(RFC822)')
	raw_email = data[0][1]
	return email.message_from_string(raw_email)