python发邮件要装什么

Python发邮件无需额外软件,内置smtplib和email模块即可实现;若追求简便,可pip安装yagmail;商业场景可用SendGrid等服务,但需注意开启邮箱SMTP并使用授权码。

Python 发邮件本身不需要额外安装专门的“发邮件软件”,但需要使用内置或第三方库来实现。最常用的是 Python 自带的 smtplibemail 模块,它们已随 Python 一起安装,**无需 pip 安装**。

基础发邮件:用自带模块就够了

只要你的 Python 是正常安装的(3.6+),下面两个模块就直接可用:

  • smtplib:负责连接邮箱服务器、登录、发送邮件(类似“邮局投递员”)
  • email:用来构造带主题、收件人、正文、附件等的邮件内容(类似“写信+装信封”)

✅ 适合:纯文本邮件、简单 HTML 邮件、带附件的基础场景。

想更省事?推荐装 yagmail

如果你觉得原生模块写法繁琐(比如要手动处理编码、登录流程、SSL/TLS 设置),可以装一个轻量友好的第三方库:

  • pip install yagmail
  • 它自动封装了 smtplib + email,一行代码就能发邮件,支持 Gmail、QQ 邮箱、163 等主流服务商
  • 示例:yag.send('to@xx.com', '标题', '正文'),连密码和 SMTP 地址都可配置好

其他可选库(按需)

  • sendgridmailgun:适合批量、高可靠、带追踪的商业邮件(需注册账号、用 API Key)
  • fastapi + jinja2 + aiosmtplib:用于异步 Web 服务中发邮件(进阶场景)

普通脚本或小工具,yagmail 就够用;只想练手或学原理,直接用 smtplib + email 即可

基本上就这些,不复杂但容易忽略的是:别忘了开启邮箱的 SMTP 服务、获取授权码(不是登录密码),尤其是 QQ/163/Gmail。