2012-02-03 20 views

risposta

10

sotto è il codice per IMAP con OAuth 2,0

email = '[email protected]' 
access_token = 'vF9dft4qmTc2Nvb3RlckBhdHRhdmlzdGEuY29tCg' 
auth_string = 'user=%s\1auth=Bearer %s\1\1' % (email, access_token) 

imap_conn = imaplib.IMAP4_SSL('imap.gmail.com') 
imap_conn.debug = 4 
imap_conn.authenticate('XOAUTH2', lambda x: auth_string) 
imap_conn.select('INBOX') 

per maggiori dettagli: http://google-mail-oauth2-tools.googlecode.com/svn/trunk/python/oauth2.py

+0

Il codice è stato spostato su github https://github.com/google/gmail-oauth2-tools/blob/master/python/oauth2.py –

-1

IMAP non supporta inbox accesso senza la password -> doesnt così imaplib

+1

IMAP supporta [SASL] (http://tools.ietf.org/html/rfc4959) come estensione –

1

Questo è qualcosa che ho calci in giro. Non volevo destreggiarmi tra token di accesso di aggiornamento e cosa non io - ho anche trovato che c'era un codice di codice troppo alto nell'esempio di Google. Ho deciso solo di scrivere wrapper molto semplici che consentono OAuth2 IMAP e SMTP che utilizzano le credenziali e gli oggetti Flow da google-api-python-client.

Speriamo che questo aiuti qualcuno.

https://github.com/richieforeman/oauth2gmail

Problemi correlati