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