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

Gmail安全更新后如何使用SMTP实现邮件自动发送

解决方案

一、Gmail SMTP 恢复发信的配置方法

Gmail在2022年就全量下线了低安全性应用访问入口,不再支持直接用账号+登录密码走SMTP鉴权,目前有两种可行方案,对原有代码改动很小:

  • 应用专用密码方案(改动成本最低)
    先给你的谷歌账号开启两步验证(2FA),开启后在账号安全设置页找到「应用专用密码」选项,应用类型选“邮件”,设备选你运行脚本的对应设备,生成16位长度的专用密码。原有代码不需要调整逻辑,只需要把gmail_password变量的值替换成这串16位密码即可,SMTP连接参数保持不变:服务器地址为smtp.gmail.com,走SSL连465端口、走TLS连587端口都可正常使用,登录语句还是你之前写的server.login(gmail_user, 应用专用密码),完全兼容旧代码。
    注意:如果是企业/教育版的谷歌工作区账号,需要管理员在后台开放应用专用密码权限才能用这个方法,个人普通账号只要开了两步验证就能直接生成密码使用。
  • OAuth2.0鉴权方案(适合生产环境)
    如果你没法开启两步验证,或者账号没有对应权限,可以把原来的明文密码登录改成XOAUTH2鉴权模式:先在谷歌云平台创建对应项目,启用Gmail API,申请OAuth2.0凭据,拿到用户授权后的access_token,SMTP登录时走XOAUTH2协议传入token即可,不需要使用账号明文密码。这个方案安全性更高,但代码改动量比应用密码方案大,适合正式上线的服务使用。

二、支持账号/授权码直连SMTP的替代服务商

如果不想适配Gmail的鉴权规则,以下服务商都支持常规SMTP账号密码登录逻辑,不需要配置复杂的OAuth流程:

  • 国内个人邮箱:QQ邮箱、163/126网易邮箱、阿里邮箱个人版,只需要在邮箱设置里开启SMTP服务,生成平台提供的SMTP专用授权码,用邮箱账号+授权码就能直接连接发信,具体连接参数在各平台设置页都有明确标注。
  • 海外邮箱/邮件服务:Outlook/Hotmail个人版(开启SMTP AUTH后用应用密码登录即可)、Zoho Mail个人免费版、SendGrid(免费额度每日100封,生成的API Key可直接当SMTP密码使用)、Mailgun(免费额度每月5000封,同样支持API密钥直连SMTP)。
    注意:普通个人邮箱不适合批量发送营销类邮件,很容易被判定为垃圾邮件导致账号封禁,批量发信场景建议使用专门的事务邮件服务。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.03 03:27:25