python - Python - 连接到 Gmail 并发送邮件 - 错误 534 InvalidSecondFactor
问题描述
我想在我的 python 代码中包含通过 gmail 发送通知邮件。
我按照所有步骤进行操作:
- 导入 smtplib
- 启用不太安全的应用程序
- 等待 1 天
- 设置2-验证访问
- 创建 16 位应用密码
- 使用 16 位应用密码更改我的 gmail 密码
- 登录我的 gmail 帐户
- 解锁显示验证码
- 10分钟内运行代码
我仍然遇到同样的错误:
(534,b'5.7.9 需要特定于应用程序的密码。了解详情,请访问\n5.7.9 https://support.google.com/mail/?p=InvalidSecondFactor h25sm8001063qkg.87 - gsmtp')
这是我的代码:
import smtplib, ssl
port = 465 # For SSL or 465
smtp_server = "smtp.gmail.com"
sender_email = "my_mail@gmail.com" # Enter your address
receiver_email = "my_mail@gmail.com" # Enter receiver address
password = '16digtisapppass' # i've checked I can log in to my gmail account with it
message = """\
Subject: Hi there
This message is sent from Python."""
try:
server = smtplib.SMTP_SSL('smtp.gmail.com', port)
server.ehlo()
server.login(sender_email, password)
server.sendmail(sender_email, receiver_email, message)
except Exception as e:
print(e)
# or
context = ssl.create_default_context()
with smtplib.SMTP_SSL(smtp_server, port, context=context) as server:
server.login(sender_email, password)
server.sendmail(sender_email, receiver_email, message)
我读过这些其他帖子:
- https://stackabuse.com/how-to-send-emails-with-gmail-using-python/
- http://stackoverflow.com/a/27515833/2684304
我不是专业的编码员,所以也许我缺少一些简单的东西。
我不知道我还能做什么。有人可以帮我吗?