2010-07-27 4 views
2

Я использую python smtplib и xoauth, и я пытаюсь отправить электронное письмо. Я использую код, отправленный Google: http://code.google.com/p/google-mail-xoauth-tools/source/browse/trunk/python/xoauth.pyGmail SMTP + XOAuth mystery

Я на самом деле аутентификацией против Gmail, и я получаю этот ответ

reply: '235 2.7.0 Accepted\r\n' 

после отправки моего XOAuth строку, как и ожидалось (http://code.google.com/apis/gmail/oauth/protocol.html#smtp)

Когда я сочиняю письмо, которое я пытаюсь отправить, я получаю следующую ошибку:

reply: '530-5.5.1 Authentication Required. Learn more at        
reply: '530 5.5.1 http://mail.google.com/support/bin/answer.py?answer=14257 f10sm4144741bkl.17\r\n' 

Любой ключ ?

ответ

3

Проблема заключается в том, как вы делаете соединение SMTP вот фрагмент из моего кода:

smtp_conn = smtplib.SMTP('smtp.googlemail.com', 587) 
    #smtp_conn.set_debuglevel(True) 
    smtp_conn.ehlo() 
    smtp_conn.starttls() 
    smtp_conn.ehlo() 
    smtp_conn.docmd('AUTH', 'XOAUTH ' + base64.b64encode(xoauth_string)) 

Вы создаете xoauth_string как в примере с Google. После этого вы можете использовать smtp_conn для отправки электронной почты. Если у вас есть какие-либо проблемы, дайте мне знать. Вы можете найти пример кода на https://github.com/PanosJee/xoauth