我想知道为什么这个代码不能发送电子邮件。在
import smtplib
content = 'test'
mail = smtplib.SMTP('smtp.gmail.com',587)
mail.ehlo()
mail.starttls()
mail.login('surapon@gmail.com','222222')
mail.sendmail('surapon@gmail.com','youremail@gmail.com',content)
mail.quit
它显示:
^{pr2}$后来,它显示:
SMTPAuthenticationError: (534, '5.7.14 <https://accounts.google.com/ContinueSignIn?sarp=1&scc=1&plt=AKgnsbu87\n5.7.14 wdTx8uq_F_WXKXEVia5I3DTMdhzuJL967nviDbOqgBU9lHzjzIHX69az6PFAzff6lA2uGJ\n5.7.14 qCqwJzys1OcoqMzMNUx5o5ja_a3XHatcxE-jqsHjqWCwYR1WVUEmBfGvUIBzgm7iUyGOXq\n5.7.14 RdYOqEx5GLAe05yUhGq-z-JphFKH-x-aA0TwEc-hyEnecghY1ZLtMMsowPhFGa1XGPnNO3\n5.7.14 8XE4yhQctKtYySbTSiQqBUmmV4qE> Please log in via your web browser and\n5.7.14 then try again.\n5.7.14 Learn more at\n5.7.14 support.google.com/mail/answer/78754 eu5sm6412101pac.37 - gsmtp')
我来解释你想做什么。您正在尝试使用以下凭据执行SMTP:
'smtp.gmail.com'公元587年 然后你试图用你的gmail密码登录。完全错了。 您要做的是:
这是因为google认为pythonsmtplib不太安全。错误消息中的链接将引导您找到答案。在
在这个链接中还有另一个允许“不太安全”的应用程序发送邮件的链接。在
https://support.google.com/accounts/answer/6010255
这允许您明确允许您的应用程序发送电子邮件。它们提供的关于什么构成安全问题的信息很少。在
它们提供给显式访问的链接是 http://www.google.com/settings/security/lesssecureapps在前面的链接中。在
我创建了yagmail作为一个包,使发送电子邮件变得非常简单。在
请尝试以下操作:
还有一些有用的技巧可以用来处理这个包,比如永远不必再次输入密码(同时仍然是安全的),这使得发送附件变得非常容易。在
安装
^{pr2}$更多信息请看github。在
相关问题 更多 >
编程相关推荐