Python3.6 通过 SMTP 协议发送电子邮件的完整指南
本文详细介绍如何在 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)

以上内容为本文的全部介绍,希望能为各位的学习提供便利,也欢迎大家继续支持本站获取更多技术资源。
免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。









