一、发送邮件需要用到yagmail模块
1. yagmail模块的安装,有以下两种安装方法,推荐第二种
1)直接cmd--pip install yagmail
这种直接安装会有bug,发送邮件时,邮件名会显示为乱码
2)下载一个yagmail-0.10.212-py2.py3-none-any.whl文件,放到C盘或其他盘
使用cd命令进入存放该文件的目录中,
输入命令:pip install yagmail-0.10.212-py2.py3-none-any.whl
3)使用该模块时需要邮箱的授权码,以QQ邮箱为例来说明授权码在哪里看
登录QQ邮箱--设置--账户--POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务--生成授权码
2. 以下通过一个例子来介绍yagmail模块的使用
1 import yagmail 2 username ='1111111111@qq.com'#发件人的邮箱 3 passwd='aaaaaaaaaa'#邮箱授权码 4 mail = yagmail.SMTP(user=username, 5 password=passwd, 6 host='smtp.qq.com',#用的是QQ邮箱则写smtp.qq.com,163邮箱则写smtp.163.com 7 smtp_ssl=True 8 #port=234# 9 )#如果用的是qq邮箱或者你们公司的邮箱使用的是安全协议的话,要加上smtp_ssl=True,163邮箱则不需要 10 mail.send(to='2222222222@qq.com',#收件人,如果是一个收件人的话直接写字符串,多个人则写成list['511402865@qq.com','1129862709@qq.com']就行 11 cc='33333333@qq.com',#抄送 12 subject='测试报告',#邮件标题 13 contents='Hello!',#邮件正文 14 attachments=[r'C:\Users\yantiantian\Desktop\抽奖项目部署文档_最新.txt',r'D:\python_file\day8\作业']# 15 #附件,多个附件则写成list,路径前面加r,不会把特殊字符转译 16 ) 17 print('发送成功')
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构