发送电子邮件时出错:引发 SMTPAuthenticationError(code, resp)
Error sending email: raise SMTPAuthenticationError(code, resp)
我正在尝试使用 smtp 模块发送电子邮件,但出现错误:
File "/usr/lib/python2.7/smtplib.py", in login
raise SMTPAuthenticationError(code, resp) smtplib.SMTPAuthenticationError: (534, '5.7.14)...
有人遇到过这个错误?你知道怎么解决吗?
代码:
def sendNotification():
recepients_list = "emailsmtplibtest@gmail.com"
subject = 'Subject'
message = "Message"
sendemail(recepients_list,subject,message)
def sendemail(to_addr_list, subject, message):
username = 'emailsmtplibtest@gmail.com'
password = 'passtest'
from_addr = 'emailsmtplibtest@gmail.com'
server = smtplib.SMTP('smtp.gmail.com', 587)
server.ehlo()
server.starttls()
server.login(username,password)
newmessage = '\r\n'.join([
'To: %s' %recepient_list,
'From: %s' % from_addr,
'Subject: %s' %subject,
'',
message
])
try:
server.sendemail(from_addr, to_addr_list,newmessage)
print 'notification sent'
except:
print 'error sending notification'
server.quit()
sendNotification()
转到Google的帐户安全设置:
www.google.com/settings/security
查找字段 "Access for less secure apps"。
将其设置为 "Allowed".
再次尝试您的脚本,将 server.sendemail()
更改为 server.sendmail()
(534, b'5.7.14 请通过网络浏览器登录 and\n5.7.14 然后重试。\n5.7.14 了解更多 at\n5.7.14 https://support.google.com/mail/answer/78754 h16sm7090987wrc .89 - gsmtp')
尝试
https://myaccount.google.com/security#connectedapps
允许安全性较低的应用:开启
一些应用程序和设备使用不太安全的登录技术,这可能会使您的帐户容易受到攻击。您可以关闭对这些应用程序的访问权限(我们建议这样做),或者不顾风险选择使用它们。
我遇到了完全相同的问题。是的,它奏效了。通过启用您的 gmail 帐户安全设置 -> 允许安全性较低的应用程序,我能够发送一封简单的电子邮件
从一个 Gmail 到另一个 Gmail 帐户。
警告: google 不建议允许访问您的 Google 帐户的应用程序使用低安全性。这可能是一种安全威胁。实验结束后关闭。
None 安全性较低的选项对我有用。最终起作用的是设置 2 因素身份验证,然后生成特定于应用程序的密码。此处说明:https://support.google.com/domains/answer/9437157
我正在尝试使用 smtp 模块发送电子邮件,但出现错误:
File "/usr/lib/python2.7/smtplib.py", in login
raise SMTPAuthenticationError(code, resp) smtplib.SMTPAuthenticationError: (534, '5.7.14)...
有人遇到过这个错误?你知道怎么解决吗?
代码:
def sendNotification():
recepients_list = "emailsmtplibtest@gmail.com"
subject = 'Subject'
message = "Message"
sendemail(recepients_list,subject,message)
def sendemail(to_addr_list, subject, message):
username = 'emailsmtplibtest@gmail.com'
password = 'passtest'
from_addr = 'emailsmtplibtest@gmail.com'
server = smtplib.SMTP('smtp.gmail.com', 587)
server.ehlo()
server.starttls()
server.login(username,password)
newmessage = '\r\n'.join([
'To: %s' %recepient_list,
'From: %s' % from_addr,
'Subject: %s' %subject,
'',
message
])
try:
server.sendemail(from_addr, to_addr_list,newmessage)
print 'notification sent'
except:
print 'error sending notification'
server.quit()
sendNotification()
转到Google的帐户安全设置: www.google.com/settings/security
查找字段 "Access for less secure apps"。 将其设置为 "Allowed".
再次尝试您的脚本,将 server.sendemail()
更改为 server.sendmail()
(534, b'5.7.14 请通过网络浏览器登录 and\n5.7.14 然后重试。\n5.7.14 了解更多 at\n5.7.14 https://support.google.com/mail/answer/78754 h16sm7090987wrc .89 - gsmtp')
尝试 https://myaccount.google.com/security#connectedapps
允许安全性较低的应用:开启 一些应用程序和设备使用不太安全的登录技术,这可能会使您的帐户容易受到攻击。您可以关闭对这些应用程序的访问权限(我们建议这样做),或者不顾风险选择使用它们。
我遇到了完全相同的问题。是的,它奏效了。通过启用您的 gmail 帐户安全设置 -> 允许安全性较低的应用程序,我能够发送一封简单的电子邮件 从一个 Gmail 到另一个 Gmail 帐户。
警告: google 不建议允许访问您的 Google 帐户的应用程序使用低安全性。这可能是一种安全威胁。实验结束后关闭。
None 安全性较低的选项对我有用。最终起作用的是设置 2 因素身份验证,然后生成特定于应用程序的密码。此处说明:https://support.google.com/domains/answer/9437157