You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

谷歌停用低安全应用后Python3脚本Gmail SMTP发信替代方案

最简单的Gmail SMTP发信替代方案

谷歌停用「允许低安全应用访问」功能后,对原有Python脚本改动最小、操作最简单的方案是使用Gmail应用专用密码(App Password),不需要额外对接复杂的OAuth2授权流程,不需要更换SMTP服务器,原有代码逻辑几乎不用调整。

前置要求

  • 你的Gmail账号必须先开启两步验证(2FA),这是使用应用专用密码的强制前提,个人普通Gmail账号均可自主开启,Google Workspace企业/教育账号如果未开放该功能需要联系域管理员开通。

操作步骤

1. 开启账号两步验证

  • 进入Google账号安全设置页,找到「两步验证」选项,按照页面提示完成身份校验,可选择手机号验证码、Google身份验证器等方式完成绑定,成功开启后即可看到应用专用密码的入口。

2. 生成应用专用密码

  • 在安全设置页进入「应用专用密码」配置项
  • 应用类型选择「其他(自定义名称)」,输入方便你识别的备注名,比如Python发信脚本,点击生成按钮
  • 页面会弹出16位长度的专用密码,该密码仅在生成时完整展示一次,关闭弹窗后无法再次查看,请妥善保存,遗失后直接重新生成即可,旧密码会自动失效

3. 修改脚本配置

原有Python发信代码完全不需要调整逻辑,只需要替换登录密码即可:

  • SMTP服务器保持为smtp.gmail.com,端口仍使用原配置的465(SSL加密)或587(STARTTLS加密)
  • 登录用户名仍为你的完整Gmail邮箱地址
  • 登录密码替换为刚才生成的16位应用专用密码即可,复制时注意不要带页面显示的分隔空格,直接输入连续的16位字符

可直接运行的测试代码(Python3标准库实现)

import smtplib
from email.mime.text import MIMEText

# 替换为你自己的配置信息
sender_email = "你的完整Gmail地址@gmail.com"
app_password = "你生成的16位应用专用密码"
receiver_email = "收件人邮箱地址@xxx.com"

# 构造普通文本邮件
msg = MIMEText("测试邮件内容", "plain", "utf-8")
msg["Subject"] = "SMTP发信测试"
msg["From"] = sender_email
msg["To"] = receiver_email

# 发信逻辑和之前完全一致
with smtplib.SMTP_SSL("smtp.gmail.com", 465) as server:
    server.login(sender_email, app_password)
    server.send_message(msg)
print("邮件发送成功")

常见注意事项

  • 该方案为Google官方支持的正规发信方式,不需要依赖第三方中转服务,稳定性和之前使用低安全应用访问的体验完全一致
  • 如果找不到应用专用密码入口,优先检查两步验证是否真的开启成功,部分刚开启2FA的账号等待1-2分钟刷新页面即可看到入口
  • 应用专用密码和账号主密码权限隔离,就算专用密码泄露,也不会影响你账号主密码的安全,不需要用的时候直接在后台删除对应密码即可立刻收回权限

内容的提问来源于stack exchange,提问作者fckilagged

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.30 08:54:21