我试着用Python脚本给自己发邮件,幸运的是我看到了这篇文章:
How to send an email with Gmail as provider using Python?
问题是,smtplib以纯文本发送脚本的密码,我对其安全性持怀疑态度。此外,我的脚本包含纯文本的用户名和密码。有没有什么好方法可以使用Python发送电子邮件而不必将我的密码保持为纯文本?
我在StackOverflow上也看到了这个: Python smtplib security 但答案并不能完全帮助我解决这场冲突。但是,我还没有准备好放弃。
更多信息:我正在尝试将我的覆盆子Pi设置为一个可以浏览网站的服务器。当有关网站的特定内容发生变化时,我希望通过电子邮件通知。然而,我不想让我的Pi坐在一个脚本,其中有我的用户名和密码的纯文本。
连接使用STARTTLS,因此它不会以明文形式通过internet发送。
函数
server.starttls()
在端口465上启动与服务器的加密通信,而不是在正常端口25上启动未加密的SMTP邮件通信。即使使用
starttls
我也被Gmail阻止了从Python脚本发送电子邮件(这在过去很有效)。。。我得到一个SMTPAuthenticationError
链接,可以通过浏览器继续登录,这对我的Python脚本试图通过smtplib
发送邮件没有帮助。我的帐户目前没有“两步验证”设置。我必须转到我的Google帐户(在浏览器中),然后选择一个选项“启用对不太安全的应用程序的访问”
https://www.google.com/settings/security
更改后,我的脚本可以再次工作。看起来Google真的希望我们使用两步验证,然后使用特定于应用程序的密码。我想我会这样做,并忍受必须输入一个短信代码登录我的电子邮件现在,然后。。。
一个明显的解决方案是
在开始运行时获取密码,并将其存储在内存中。
相关问题 更多 >
编程相关推荐