如何使用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 smtplibfromaddr = '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