欢迎访问宙启技术站
智能推送

Python中如何使用email.mime.text模块发送纯文本邮件

发布时间:2023-12-24 01:09:06

在Python中,我们可以使用email模块中的email.mime.text模块来发送纯文本邮件。以下是一个使用例子,具体如下:

首先,我们需要导入相关模块:

import smtplib
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart

然后,我们需要设置发件人、收件人、邮件主题和正文内容:

# 发件人、收件人和邮件主题
sender = 'sender@example.com'
receivers = ['receiver@example.com']
subject = 'Test Email'

# 邮件正文内容
text = """\
This is a test email.
"""

# 创建一个MIMEMultipart对象,用于包含邮件内容
msg = MIMEMultipart()
msg['From'] = sender
msg['To'] = ', '.join(receivers)
msg['Subject'] = subject

接下来,我们需要将正文内容添加到邮件中:

# 创建一个MIMEText对象,用于表示邮件正文
body = MIMEText(text)

# 将正文添加到MIMEMultipart对象中
msg.attach(body)

然后,我们可以使用smtplib库来发送邮件:

# 设置发件人邮箱的用户名和密码
username = 'sender@example.com'
password = 'your_password'

# 创建一个SMTP对象,并连接到发件人邮箱的SMTP服务器
smtp_obj = smtplib.SMTP('smtp.example.com', 587)

# 开启TLS连接
smtp_obj.starttls()

# 登录发件人邮箱
smtp_obj.login(username, password)

# 发送邮件
smtp_obj.sendmail(sender, receivers, msg.as_string())

# 关闭SMTP连接
smtp_obj.quit()

完整代码示例:

import smtplib
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart

# 发件人、收件人和邮件主题
sender = 'sender@example.com'
receivers = ['receiver@example.com']
subject = 'Test Email'

# 邮件正文内容
text = """\
This is a test email.
"""

# 创建一个MIMEMultipart对象,用于包含邮件内容
msg = MIMEMultipart()
msg['From'] = sender
msg['To'] = ', '.join(receivers)
msg['Subject'] = subject

# 创建一个MIMEText对象,用于表示邮件正文
body = MIMEText(text)

# 将正文添加到MIMEMultipart对象中
msg.attach(body)

# 设置发件人邮箱的用户名和密码
username = 'sender@example.com'
password = 'your_password'

# 创建一个SMTP对象,并连接到发件人邮箱的SMTP服务器
smtp_obj = smtplib.SMTP('smtp.example.com', 587)

# 开启TLS连接
smtp_obj.starttls()

# 登录发件人邮箱
smtp_obj.login(username, password)

# 发送邮件
smtp_obj.sendmail(sender, receivers, msg.as_string())

# 关闭SMTP连接
smtp_obj.quit()

注意,需要根据自己的情况修改相应的发件人、收件人、邮件服务器等信息。另外,发送邮件需要使用自己的发件人邮箱的用户名和密码,进行登录验证。