SMTP发送邮件Python实现
SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式。Python提供了smtplib模块,它实现了SMTP协议,可以利用它来发送邮件。
使用方法
使用Python发送邮件,需要使用smtplib模块,它实现了SMTP协议,可以利用它来发送邮件。
需要准备好发件人的邮箱地址、收件人的邮箱地址、邮件主题、邮件正文等,使用Python的smtplib模块提供的SMTP对象,连接SMTP服务器,发送邮件。
import smtplib
from email.mime.text import MIMEText
# 设置服务器所需信息
# 163邮箱服务器地址
mail_host = 'smtp.163.com'
# 163用户名
mail_user = 'xxx@163.com'
# 密码
mail_pass = 'xxx'
# 邮件发送方邮箱地址
sender = 'xxx@163.com'
# 邮件接受方邮箱地址,注意需要[]包裹,这意味着你可以写多个邮件地址群发
receivers = ['xxx@qq.com']
# 设置email信息
# 邮件内容设置
message = MIMEText('Python 邮件发送测试...', 'plain', 'utf-8')
# 邮件主题
message['Subject'] = 'Python SMTP 邮件测试'
# 发送方信息
message['From'] = sender
# 接受方信息
message['To'] = receivers[0]
# 登录并发送邮件
try:
smtpObj = smtplib.SMTP()
# 连接到服务器
smtpObj.connect(mail_host, 25)
# 登录到服务器
smtpObj.login(mail_user,mail_pass)
# 发送
smtpObj.sendmail(
sender, receivers, message.as_string())
# 退出
smtpObj.quit()
print('success')
except smtplib.SMTPException as e:
print('error', e) # 打印错误
以上是使用Python发送邮件的基本步骤,只需要简单的几步就可以完成发送邮件的操作。
需要注意的是,使用Python发送邮件,只能发送文本邮件,不能发送HTML格式的邮件,也不能发送附件。
如果要发送带有附件的邮件,可以使用Python的email模块,它可以构造一封复杂的邮件,包括文本、图片、附件等。