上一篇
Python yagmail库教程:轻松发送电子邮件 - Python邮件发送指南
- Python
- 2025-08-14
- 734
Python yagmail库教程
轻松发送电子邮件的Python解决方案
什么是yagmail?
yagmail是一个专为Python设计的邮件发送库,它简化了通过SMTP发送邮件的复杂过程。与Python内置的smtplib相比,yagmail提供了更简洁、更Pythonic的API。
主要优点:
- 极简的API设计,减少代码量
- 自动处理SMTP连接
- 支持HTML内容和附件
- 安全存储密码
- 支持Gmail及其他SMTP服务
安装yagmail
使用pip安装:
pip install yagmail
基本用法
1. 发送简单文本邮件
import yagmail
# 初始化客户端(首次使用会提示输入密码)
yag = yagmail.SMTP('your_email@gmail.com', host='smtp.gmail.com')
# 发送邮件
yag.send(
to='recipient@example.com',
subject='测试邮件',
contents='这是一封来自yagmail的测试邮件!'
)
2. 发送HTML邮件
html_content = """
<h1 style="color: #3498db;">欢迎加入我们!</h1>
<p>感谢您注册我们的服务。</p>
<ul>
<li>账户已激活</li>
<li>您现在可以登录</li>
</ul>
"""
yag.send(
to='recipient@example.com',
subject='欢迎邮件',
contents=html_content
)
3. 发送带附件的邮件
# 单个附件
yag.send(
to='recipient@example.com',
subject='月度报告',
contents='请查收附件中的月度报告',
attachments=['/path/to/report.pdf']
)
# 多个附件
yag.send(
to='recipient@example.com',
subject='项目文档',
contents='项目相关文档见附件',
attachments=['doc1.docx', 'data.xlsx', 'image.png']
)
4. 群发邮件
recipients = ['user1@example.com', 'user2@example.com', 'user3@example.com']
yag.send(
to=recipients,
subject='重要通知',
contents='请所有成员注意下周会议时间变更'
)
高级功能
1. 安全存储密码
yagmail可以在keyring中安全存储密码:
# 首次运行时,会提示输入密码
yagmail.register('your_email@gmail.com', 'your_password')
2. 使用别名
yag.send(
to='recipient@example.com',
subject='来自开发团队',
contents='这是邮件内容',
headers={'From': 'Dev Team <dev@company.com>'}
)
3. 发送内联图片
contents = [
"<h1>产品图片</h1>",
"<p>这是我们最新产品的图片:</p>",
yagmail.inline('/path/to/product.jpg'),
"<p>欢迎反馈!</p>"
]
yag.send(to='recipient@example.com', subject='产品图片', contents=contents)
常见问题
1. 如何解决Gmail发送问题?
确保在Google账户中启用了"安全性较低的应用的访问权限"或使用应用专用密码。
2. 支持哪些邮件服务商?
yagmail支持所有SMTP服务,包括:
- Gmail: smtp.gmail.com, 端口465/587
- Outlook/Hotmail: smtp-mail.outlook.com, 端口587
- Yahoo: smtp.mail.yahoo.com, 端口465
- 企业SMTP服务器
3. 如何发送给多个收件人但不互相看到?
# 使用bcc参数
yag.send(
bcc=['user1@example.com', 'user2@example.com'],
subject='机密通知',
contents='这封邮件是密送的'
)
开始使用yagmail
yagmail让Python邮件发送变得简单高效。只需几行代码,即可实现复杂的邮件发送功能。
立即尝试,提升您的自动化邮件处理能力!
本文由XiangXinMin于2025-08-14发表在吾爱品聚,如有疑问,请联系我们。
本文链接:http://521pj.cn/20258104.html
发表评论