如何使用Python以提供者的身份通过Gmail发送电子邮件?

我正在尝试使用python发送电子邮件(Gmail),但出现以下错误。

Traceback (most recent call last):  

File "emailSend.py", line 14, in <module>

server.login(username,password)

File "/usr/lib/python2.5/smtplib.py", line 554, in login

raise SMTPException("SMTP AUTH extension not supported by server.")

smtplib.SMTPException: SMTP AUTH extension not supported by server.

Python脚本如下。

import smtplib

fromaddr = 'user_me@gmail.com'

toaddrs = 'user_you@gmail.com'

msg = 'Why,Oh why!'

username = 'user_me@gmail.com'

password = 'pwd'

server = smtplib.SMTP('smtp.gmail.com:587')

server.starttls()

server.login(username,password)

server.sendmail(fromaddr, toaddrs, msg)

server.quit()

回答:

你需要EHLO先直接说一下STARTTLS

server = smtplib.SMTP('smtp.gmail.com:587')

server.ehlo()

server.starttls()

此外,你应该真正创造From:,To:以及Subject:邮件标题,一个空行,并使用从邮件正文中分离出来CRLF作为EOL标志。

例如

msg = "\r\n".join([

"From: user_me@gmail.com",

"To: user_you@gmail.com",

"Subject: Just a message",

"",

"Why, oh why"

])

以上是 如何使用Python以提供者的身份通过Gmail发送电子邮件? 的全部内容, 来源链接: utcz.com/qa/421083.html

回到顶部