Вот пример подключения к IMAP с использованием подпрограмм, представленных в Google xoauth.py
.Он выведет некоторую отладочную информацию, поэтому вы, вероятно, захотите перейти на использование пакета oauth для реального приложения.По крайней мере, это должно начать вас:
import imaplib
import random
import time
import xoauth
MY_EMAIL = 'xxx@gmail.com'
MY_TOKEN = # your token
MY_SECRET = # your secret
def connect():
nonce = str(random.randrange(2**64 - 1))
timestamp = str(int(time.time()))
consumer = xoauth.OAuthEntity('anonymous', 'anonymous')
access = xoauth.OAuthEntity(MY_TOKEN, MY_SECRET)
token = xoauth.GenerateXOauthString(
consumer, access, MY_EMAIL, 'imap', MY_EMAIL, nonce, timestamp)
imap_conn = imaplib.IMAP4_SSL('imap.googlemail.com')
imap_conn.authenticate('XOAUTH', lambda x: token)
imap_conn.select('INBOX')
return imap_conn
connect()