python - 尝试从 python 代码发送电子邮件(到 gmail 帐户)时出现奇怪的错误
问题描述
当我尝试通过命令提示符运行代码时出现以下错误:
C:\Users\Admin\Desktop\python files>sendemail.py
Traceback (most recent call last):
File "C:\Users\Admin\Desktop\python files\sendemail.py", line 18, in <module>
mail.login(semail,spassword)
File "C:\Users\Admin\Anaconda3\lib\smtplib.py", line 730, in login
raise last_exception
File "C:\Users\Admin\Anaconda3\lib\smtplib.py", line 721, in login
initial_response_ok=initial_response_ok)
File "C:\Users\Admin\Anaconda3\lib\smtplib.py", line 642, in auth
raise SMTPAuthenticationError(code, resp)
smtplib.SMTPAuthenticationError: (534, b'5.7.14 <https://accounts.google.com/signin/continue?sarp=1&scc=1&plt=AKgnsbs5\n5.7.14 wGoV0BCEXzEk0wxtxU8ma6bwFe41jaXO7RaT8gE9mYRpUlxgmhO_Ycjqv18n50KWfE8cVD\n5.7.14 hSO50CoXj9t7zesCTQ1Ztt4dgRn19s-qdaHqAE-MlCjFonn7NxUcy6vkbAFeWQDDZ9RVUJ\n5.7.14 hypJBWeSGRCi_agtkf1tMgmWQE-Y6sNwcPObMDUK6MMXpDxgQMuXgdvrhalQEDEgRM81HY\n5.7.14 WS4Nmwt6gutUPZHIHUnomf-ZwIT7RBJfeOSjP8OXcQF0JEOcQm3Dur0_YJz7VFbz5KhzLZ\n5.7.14 ZLVFTfmY-RmSENzJwJY6U6iL0AhBUSlau2Ph6M5T507H1obC4JHgSNQCUdWPiILQAdkwoF\n5.7.14 t5gOoxatSDtzpHLRVffPHOd_X6K_O7M53xidmRghoNywgoY4wFWwrdhxsHz77COpbN1fQB\n5.7.14 67NMZBdYf06Mj3lacV0rqnXyhX59w8TE5VLjoPXGoC3EaepSSUeeymKXWwDs-J9_rFdSLd\n5.7.14 q14gU> Please log in via your web browser and then try again.\n5.7.14 Learn more at\n5.7.14 https://support.google.com/mail/answer/78754 e73-v6sm67293355pfb.153 - gsmtp')
我使用的代码是:
import smtplib
semail = "sender@gmail.com"
spassword = "pwd"
remail = "reciever@gmail.com"
content = "The code worked properly"
mail = smtplib.SMTP('smtp.gmail.com',587)
mail.ehlo()
mail.starttls()
mail.login(semail,spassword)
mail.sendmail(semail,remaill,content)
mail.close()
我无法理解此错误的含义。请有人建议我应该做些什么改变才能让它运行
解决方案
推荐阅读
- hyperledger-fabric-ca - 如何远程访问 Fabric-ca 服务器?
- angular - 需要为许多属性中的特定属性应用管道
- docker - 每当挂载的代码更改时,盖茨比都不会重建
- sql - Json 数组 - 选择左侧数组中不在右侧数组中的元素
- xpages - 过滤掉 XPage 视图中的数据
- sql - 尝试在嵌套循环中使用两个硬编码值
- html - 如何确定按下了哪个按钮
- php - PHP:使用嵌套数组从 array1 获取值
- python - 在 groupby 中对多索引执行功能
- azure-devops - 如何配置 Azure DevOps 版本以在开始新版本之前完成其所有阶段