编写Python程序发送带有MIMEText的电子邮件
发布时间:2023-12-23 09:51:57
发送带有MIMEText的电子邮件涉及以下步骤:
1. 导入必要的模块:
import smtplib from email.mime.text import MIMEText
2. 创建MIMEText对象:
msg = MIMEText('这是邮件的内容', 'plain', 'utf-8')
参数说明:
- 个参数是邮件正文内容。
- 第二个参数是指定邮件内容格式,这里使用的是普通文本格式(plain)。
- 第三个参数是指定编码格式。
3. 设置邮件头部信息:
msg['Subject'] = '邮件的主题' msg['From'] = '发件人的邮箱地址' msg['To'] = '收件人的邮箱地址'
4. 发送邮件:
# 连接SMTP服务器,这里使用的是Gmail的SMTP服务器
smtp_server = 'smtp.gmail.com'
smtp_port = 587
smtp_user = '发件人的邮箱地址'
smtp_password = '发件人的邮箱密码'
with smtplib.SMTP(smtp_server, smtp_port) as server:
server.starttls()
server.login(smtp_user, smtp_password)
server.sendmail(smtp_user, [msg['To']], msg.as_string())
参数说明:
- 个参数是SMTP服务器地址。
- 第二个参数是SMTP服务器端口。
- 第三个参数是发件人的邮箱地址。
- 第四个参数是发件人的邮箱密码。
- starttls()方法用来请求安全传输层连接。
- login()方法用来登录SMTP服务器。
- sendmail()方法用来发送邮件。
下面是一个完整的示例程序:
import smtplib
from email.mime.text import MIMEText
def send_email():
msg = MIMEText('这是邮件的内容', 'plain', 'utf-8')
msg['Subject'] = '邮件的主题'
msg['From'] = '发件人的邮箱地址'
msg['To'] = '收件人的邮箱地址'
smtp_server = 'smtp.gmail.com'
smtp_port = 587
smtp_user = '发件人的邮箱地址'
smtp_password = '发件人的邮箱密码'
with smtplib.SMTP(smtp_server, smtp_port) as server:
server.starttls()
server.login(smtp_user, smtp_password)
server.sendmail(smtp_user, [msg['To']], msg.as_string())
if __name__ == '__main__':
send_email()
这个程序会发送一封邮件给指定的收件人,邮件内容为"这是邮件的内容",主题为"邮件的主题"。请注意替换代码中的发件人邮箱地址和密码,以及收件人的邮箱地址。
希望这个例子对你有帮助!
