发送电子邮件已经是我们日常沟通的重要部分,无论是工作上还是生活中,都有很多时候需要发送邮件。本文将详细介绍使用Python SMTP发送邮件的完整指南,包括SMTP协议、邮件格式、邮件服务器选取、代码示例等内容。
一、SMTP协议
SMTP,即简单邮件传输协议,是用于发送电子邮件的标准协议。它定义了邮件的传输方式,附件格式等规范,以保证邮件能够被正常接收。当我们通过Python发送邮件时,要使用SMTP协议来构建邮件并发送。
在Python中,我们可以使用smtplib库来实现SMTP协议。对于SMTP服务器的选择,需要对自己所在的网络环境作出相应的选择。一般而言,百度、腾讯、阿里等互联网公司都提供SMTP服务器,同时也可以选择其他稳定的SMTP服务商。
二、邮件格式
在使用Python发送邮件时,需要注意邮件格式,保证邮件能够正确显示。常见的邮件格式有纯文本、HTML、纯文本+HTML混合。在发送邮件时,可以通过设置MIME(多用途互联网邮件扩展)格式来指定邮件格式。
下面是一个HTML格式的邮件示例:
import smtplib
from email.mime.text import MIMEText
from email.header import Header
from email.mime.multipart import MIMEMultipart
from email.mime.application import MIMEApplication
from email.utils import COMMASPACE
# 发送邮件的账号和密码
sender = 'youremail@163.com'
password = 'yourpassword'
# 收件人
to_addr = ['email1@163.com', 'email2@qq.com']
# 构造带附件的邮件
msg = MIMEMultipart()
msg['From'] = Header("发送人", 'utf-8')
msg['To'] = COMMASPACE.join(to_addr)
msg['Subject'] = Header('Python发送HTML格式的邮件', 'utf-8')
# 邮件正文
body = MIMEText('Hello, HTML邮件测试!
' +
'' +
'