新闻中心

python中yagmail库有何用法?

2025-11-24
浏览次数:
返回列表
yagmail 是专为 Gmail 设计的 Python 库,简化 SMTP 邮件发送。通过 pip install yagmail 安装后,可使用应用专用密码登录:yag = yagmail.SMTP('your_email@gmail.com', 'your_password'),调用 send 方法发送文本邮件。支持带附件、图片内联和 HTML 内容,contents 可传字符串或列表,包含文件路径自动处理。可通过 cc 添加抄送。推荐使用 yagmail.register() 将密码保存至系统密钥环,避免明文泄露。适用于日志提醒、报表发送等自动化场景,语法简洁,易于上手。

python中yagmail库有何用法?

yagmail 是一个简化 Python 发送邮件操作的第三方库,特别针对 Gmail 用户设计,使用起来非常方便。它封装了 SMTP 协议的复杂细节,让发送邮件只需几行代码即可完成。

安装 yagmail

在使用前需先安装库:

pip install yagmail

基本用法:发送简单邮件

发送一封文本邮件非常简单,只需设置发件人邮箱、密码(或应用专用密码)、收件人和内容:

  • 若使用 Gmail,建议开启两步验证并生成“应用专用密码”作为登录凭证
  • yagmail.SMTP() 自动处理 Gmail 的 SMTP 配置(smtp.gmail.com:587)

import yagmail

yag = yagmail.SMTP('your_email@gmail.com', 'your_password')
yag.send(
    to='recipient@example.com',
    subject='测试邮件',
    contents='这是一封通过 yagmail 发送的测试邮件。'
)
print("邮件已发送")

发送带附件和格式化内容的邮件

yagmail 支持富文本内容和多种附件类型,可直接传入文件路径或 HTML 片段:

  • contents 可以是字符串、列表,支持混合文本与文件路径
  • 自动识别图片并内联显示(如用于 HTML 邮件中的 logo)
  • 支持 cc 抄送字段

yag = yagmail.SMTP('your_email@gmail.com', 'your_password')

contents = [
    "亲爱的用户,你好!",
    "这是正文部分。",
    "report.pdf", # 添加附件
    "/path/to/image.png" # 图片会自动作为附件或内联处理
]

yag.send(
    to='user@domain.com',
    cc='manager@domain.com',
    subject='周报提交',
    contents=contents,
)

使用密钥管理器避免明文密码

为安全起见,不建议将密码写死在代码中。yagmail 可自动从系统密钥环读取密码:

新快购物系统 新快购物系统

新快购物系统是集合目前网络所有购物系统为参考而开发,不管从速度还是安全我们都努力做到最好,此版虽为免费版但是功能齐全,无任何错误,特点有:专业的、全面的电子商务解决方案,使您可以轻松实现网上销售;自助式开放性的数据平台,为您提供充满个性化的设计空间;功能全面、操作简单的远程管理系统,让您在家中也可实现正常销售管理;严谨实用的全新商品数据库,便于查询搜索您的商品。

新快购物系统 0 查看详情 新快购物系统
  • 首次运行时保存密码:yagmail.register('your_email@gmail.com', 'your_password')
  • 之后调用 yagmail.SMTP('your_email@gmail.com') 即可自动获取密码
  • 依赖于操作系统密钥服务(如 macOS Keychain、Linux secret-service)

仅需执行一次

yagmail.register('your_email@gmail.com', 'your_password')

日后使用无需输入密码

yag = yagmail.SMTP('your_email@gmail.com')
yag.send(to='xxx@example.com', subject='Hi', contents='Hello!')

基本上就这些。yagmail 适合快速实现邮件通知功能,比如日志提醒、报表发送、自动化消息等场景,语法简洁,对新手友好。

以上就是python中yagmail库有何用法?的详细内容,更多请关注其它相关文章!


# 这是  # 微博宣传推广网站怎么做  # 贵阳小网站推广怎么做  # 真正的seo怎么做  # 网站运营是推广的意思嘛  # 跨境电商营销推广ppt  # 吉林网络营销seo  # 湘潭seo优化价位  # 青羊短视频推广素材网站  # 许昌网站建设方案  # 长沙网站建设模板企业  # 您的  # 是一个  # 发送邮件  # 一封  # 只需  # linux  # 有何  # 新快  # 购物系统  # cos  # 邮箱  # macos  # pdf  # ai  # mac  # 操作系统  # go  # html  # python  # word 


相关栏目: 【 科技资讯46185 】 【 网络学院92790


相关推荐: Linux如何构建多环境配置管理_Linux多环境配置方案  必由学官网快捷入口 必由学网页版在线学习平台  MongoDB聚合管道:正确匹配对象数组中_id的方法  如何在低配置电脑上搭建轻量级J*a环境_占用更小的环境选择技巧  学习通网页版快速入口 学习通官网网页版直接打开  Golang如何实现微服务鉴权与权限控制_Golang微服务鉴权与权限管理实践  抖音DOU+怎么投最有效 抖音付费推广的ROI提升技巧  mc.js游戏直达 mc.js网页免下载版本秒进地址  Python大型XML文件高效流式解析教程  ArchiveofOurOwn小说阅读-ArchiveofOurOwn同人作品访问链接  win11怎么查看应用耗电情况 Win11电池设置查看应用能耗排行榜【优化】  如何在Python中使用Optional类型处理可变对象并避免Pylint警告  4399免费游戏网址入口 4399小游戏免费入口点开即玩  Composer中的^和~符号代表什么_精通Composer版本号语义化约束  深入理解rpy2中的类型转换:优化Python对象到R矩阵的映射  如何将一个大型PHP应用拆分为多个Composer包_微服务与模块化架构的Composer实践  妖精漫画网页版登录入口免费_妖精漫画官网主页直接阅读漫画  拼多多购物车商品数量无法修改如何处理 拼多多购物车操作优化方法  AngularJS $http POST请求数据传递与Go后端接收实践  如何在 Excel Online 和 Google 表格中更改日期格式  蛙漫漫画官网在线入口 蛙漫全本漫画免费阅读平台  mysql密码锁定怎么解锁_mysql密码锁定解锁后修改密码步骤  R星幕后开发视频泄露 包含《GTA6》等多款大作  LINUX的perf命令入门_LINUX官方性能分析工具的使用与解读  如何在网页中实现特定地点的随机图片展示  c++如何使用折叠表达式(Fold Expressions)_c++17可变参数模板新技巧  J*aScript DOM操作:高效清空列表元素的策略与实践  Go语言中的*string:深入理解字符串指针  Fabric模组开发:自定义物品与物品组的现代管理方法  J*a最大堆Heapify方法修复:索引计算与边界条件深度解析  Win10如何开启蓝牙功能_Windows10找不到蓝牙开关解决方法  深入理解J*a链表中的IPosition接口与使用  晋江读书网页版在线登录 晋江读书电脑版官网  可靠CSGO开箱平台解析 CSGO开箱网合集  C++如何比较两个字符串_C++ string compare函数与操作符对比  Win11怎么修改默认浏览器_Windows 11设置Chrome为默认  Pyrogram与g4f集成:异步编程实践与常见错误解决  Yandex浏览器官方网页版入口 Yandex浏览器最新版官网  Steam官网入口直达 Steam注册及登录步骤  今日头条怎么同步内容到抖音_今日头条内容同步到抖音教程  163邮箱登录密码 163邮箱忘记密码找回  字由网在线版登录地址 字由网网页版安全入口  Centos/Linux 系统下安装 composer 的完整步骤  谷歌google账号怎么注册账号 谷歌账号注册官方流程  Yandex搜索引擎官网入口_俄罗斯Yandex免登录一键直达  使用 Pandas 高效处理 .dat 文件:数据清洗与数值计算实战  消息称三星明年 2 月正式发布 HBM4,与 SK 海力士同台竞技  《马克思佩恩3》早期版本曝光 UI设计曾多次调整!  在J*a项目里如何构建对象之间的契约_接口约束的实际落地  PHP中高效并行检查多链接状态的教程 

搜索