def __init__(self, email, oauth_token, oauth_token_secret): self.url = BASE_URL % email self.token = oauth.Token(oauth_token, oauth_token_secret) self.consumer = oauth.Consumer(settings.OAUTH_CONSUMER_KEY, settings.OAUTH_CONSUMER_SECRET) self.imap_server = imaplib.IMAP4_SSL("imap.gmail.com") self.loggedIn = False self.mailboxes = gmail_mailboxes.gmail_mailboxes(self) self.messages = gmail_messages.gmail_messages(self)
def authenticate(self): conn = imaplib.IMAP4_SSL('imap.googlemail.com') conn.authenticate(self.url, self.consumer, self.token) return conn
# -*- coding: utf-8 -*- import sys import oauth2 as oauth import oauth2.clients.imap as imaplib # See http://code.google.com/p/google-mail-xoauth-tools/wiki/ # XoauthDotPyRunThrough for details on xoauth.py OAUTH_TOKEN = sys.argv[1] # obtained with xoauth.py OAUTH_TOKEN_SECRET = sys.argv[2] # obtained with xoauth.py GMAIL_ACCOUNT = sys.argv[3] # [email protected] url = 'https://mail.google.com/mail/b/%s/imap/' % (GMAIL_ACCOUNT, ) # Standard values for GMail's Xoauth consumer = oauth.Consumer('anonymous', 'anonymous') token = oauth.Token(OAUTH_TOKEN, OAUTH_TOKEN_SECRET) conn = imaplib.IMAP4_SSL('imap.googlemail.com') conn.debug = 4 # set to the desired debug level conn.authenticate(url, consumer, token) conn.select('INBOX') # access your INBOX data
import oauth2 as oauth from oauth2.clients import imap as imaplib consumer = oauth.Consumer('', '') token = oauth.Token('','') url = 'https://mail.google.com/mail/b/[email protected]/imap/' mail = imaplib.IMAP4_SSL('imap.gmail.com') mail.debug = 4 mail.authenticate(url, consumer, token) mail.list()