Python3.6 通过 SMTP 协议发送电子邮件的完整指南

宋时安
宋时安
发布时间:2026-10-13 | 4人浏览过
原创

本文详细介绍如何在 Python3.6 环境中使用 SMTP 协议发送电子邮件。内容涵盖网易 126 邮箱与腾讯企业邮箱的具体配置方法,包括服务器地址、端口号及授权密码的设置。提供完整的 Python 代码示例,演示如何构建 MIME 邮件、处理发件人格式、建立 SSL 连接并执行发送操作,帮助开发者快速实现邮件自动化功能。

Python3.6 SMTP 邮件发送概述

本示例展示了在 Python3.6 环境下利用 SMTP 协议发送邮件的具体实现代码,供读者参考学习。

具体实现代码如下所示:

腾讯企业邮箱发送代码实现


# !/usr/bin/python3
# coding: utf-8

import smtplib

from email.header import Header
from email.mime.text import MIMEText
from email.utils import parseaddr
from email.utils import formataddr


def format_addr(s):
 name, addr = parseaddr(s)
 return formataddr((Header(name, "utf-8").encode(), addr))


from_email = "email@qq.com" # 邮箱地址
from_email_pwd = "password" # 邮箱密码
to_email = "to@qq.com" # 接收者邮箱
smtp_server = "smtp.exmail.qq.com" # 协议

msg = MIMEText("<html><body><h3>hello</h3><p>hello, send by python</p></body></html>", "html", "utf-8")
msg["From"] = format_addr("%s" % (from_email))
msg["To"] = format_addr("%s" % (to_email))
msg["Subject"] = Header("python email", "utf-8").encode()

server = smtplib.SMTP_SSL(smtp_server, port=465) # 腾讯企业邮箱配置(SSL)
# server = smtplib.SMTP(smtp_server, port=25) # 网易126邮箱
server.set_debuglevel(1)
server.login(from_email, from_email_pwd)
server.sendmail(from_email, [to_email], msg.as_string())
server.quit()

网易邮箱配置指南

针对网易邮箱的配置步骤如下:

首先需在邮箱设置中开启 IMAP/SMTP 服务,获取 SMTP 服务器地址为 smtp.126.com。同时,必须设置客户端授权密码,代码中登录邮箱时使用的密码应为此授权密码,而非原始登录密码。

网易邮箱代码片段


smtp_server = "smtp.126.com" # 协议
server = smtplib.SMTP(smtp_server, port=25) # 网易126邮箱

腾讯企业邮箱配置指南

针对腾讯企业邮箱的配置步骤如下:

同样需要开启 IMAP/SMTP 服务。发送服务器地址为 smtp.exmail.qq.com,需使用 SSL 加密连接,端口号为 465,此时密码直接使用邮箱登录密码即可。

腾讯企业邮箱代码片段


smtp_server = "smtp.exmail.qq.com" # 协议
server = smtplib.SMTP_SSL(smtp_server, port=465)

以上内容为本文的全部介绍,希望能为各位的学习提供便利,也欢迎大家继续支持本站获取更多技术资源。

相关标签:

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表