python实现邮件发送较为简单,主要用到smtplib这个模块,所以下面这篇文章主要给大家介绍了关于python3利用smtplib通过qq邮箱发送邮件的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考借鉴,下面随着小编来一起看看吧。 Python3 使用 `smtplib` 模块发送邮件是一个常见的任务,尤其对于自动化报告或通知而言。`smtplib` 是 Python 标准库的一部分,它提供了 SMTP 协议的客户端实现,允许我们向邮件服务器发送邮件。在这个例子中,我们将通过 QQ 邮箱发送邮件。 我们需要了解QQ邮箱的 SMTP 服务器设置。QQ 邮箱的 SMTP 服务器地址为 `smtp.qq.com`,端口通常是 465 或 587。其中,465 端口使用 SSL 安全连接,而 587 端口通常用于 TLS 加密。在使用 SMTP 服务之前,你需要在 QQ 邮箱的设置中开启 SMTP 服务。 开启 SMTP 服务的步骤如下: 1. 登录你的 QQ 邮箱。 2. 进入“设置” > “账户”。 3. 在“账户”设置中找到 POP3/SMTP/IMAP 设置,将其开启。 4. 保存设置。 接下来,我们编写 Python 代码来发送邮件。主要涉及以下几个步骤: 1. 导入必要的库:`smtplib` 用于 SMTP 协议,`email.mime.text` 用于创建邮件文本内容,`email.utils.formataddr` 用于格式化发件人和收件人的地址。 2. 定义发件人和收件人的邮箱账号,以及发件人邮箱的密码(SMTP 授权码)。 3. 创建一个 `MIMEText` 对象,设置邮件内容、类型(如纯文本、HTML)、编码(如 UTF-8)。 4. 添加邮件头部信息,如 `From`(发件人)、`To`(收件人)、`Subject`(主题)。 5. 初始化 `SMTP_SSL` 客户端,使用发件人邮箱的 SMTP 服务器和端口,并进行登录。 6. 使用 `sendmail` 方法发送邮件,传入发件人、收件人列表和邮件内容。 7. 关闭 SMTP 连接。 示例代码如下: ```python import smtplib from email.mime.text import MIMEText from email.utils import formataddr my_sender = '[email protected]' # 发件人邮箱账号 my_pass = 'xxxxxxxxxxxx' # 发件人邮箱密码(SMTP 授权码) my_user = '[email protected]' # 收件人邮箱账号 def send_email(): ret = True try: msg = MIMEText('填写邮件内容', 'plain', 'utf-8') msg['From'] = formataddr(["发件人昵称", my_sender]) msg['To'] = formataddr(["收件人昵称", my_user]) msg['Subject'] = "邮件主题-测试" server = smtplib.SMTP_SSL("smtp.qq.com", 465) server.login(my_sender, my_pass) server.sendmail(my_sender, [my_user], msg.as_string()) server.quit() except Exception as e: print(f"邮件发送失败:{e}") ret = False return ret if __name__ == "__main__": result = send_email() if result: print("邮件发送成功") else: print("邮件发送失败") ``` 需要注意的是,如果收件人地址错误,虽然代码可能显示“邮件发送成功”,但在实际中邮件会被退回。QQ 邮箱会发送一封退信到发件人邮箱,告知发送失败的原因。因此,确保收件人地址的准确性是非常重要的。 通过 Python3 的 `smtplib` 模块,我们可以轻松地实现通过 QQ 邮箱发送邮件的功能。在实际应用中,你可以根据需要扩展这个基础模板,例如添加附件、使用 HTML 格式或处理多个收件人等。


























- 粉丝: 8
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 基于单片机的交流电机转动控制系统方案设计书.doc
- 《项目管理决策分析与评价》摸底评测.doc
- 综合布线设计方案.docx
- 区块链技术在金融领域应用的风险管理策略研究.docx
- 数据库应用技术知识点.doc
- ATS单片机停车场车位设计.doc
- 2018年度四川省大数据时代的互联网信息安全试题及答案1.doc
- 数据库设计报告1111111111111.doc
- 项目管理在农用飞机维修工程中的应用.docx
- 基于物联网的智能家居系统的设计与应用.docx
- kubernetes系列03—kubeadm安装部署K8S集群.docx
- 基于服务器虚拟化的政务云平台设计.docx
- C语言程序设计工业和信息化普通高等教育“十二五”规划教材立项项目-赵山林-高媛.doc
- matlab电炉温度控制算法比较及仿真研究分析.doc
- 电力调度自动化系统的网络安全问题与对策分析.docx
- 大数据时代人力资源管理创新策略初探.docx


