Python中如何在MIMEText中添加时间戳到电子邮件的主体
发布时间:2024-01-01 06:55:40
在Python中,可以使用email和smtplib模块来发送包含时间戳的电子邮件。以下是一个示例,展示了如何使用MIMEText添加时间戳到电子邮件的主体。
首先,我们需要导入所需的模块:
import smtplib from email.mime.text import MIMEText from email.utils import formatdate
然后,我们可以定义函数来发送带有时间戳的电子邮件:
def send_email(sender, receiver, subject, body):
msg = MIMEText(body) # 创建MIMEText对象,将body作为邮件正文
msg['Subject'] = subject # 设置邮件的主题
msg['From'] = sender # 设置发件人
msg['To'] = receiver # 设置收件人
msg['Date'] = formatdate(localtime=True) # 设置邮件发送时间为当前时间
try:
smtp = smtplib.SMTP('smtp.example.com') # 创建一个SMTP对象
smtp.sendmail(sender, receiver, msg.as_string()) # 发送邮件
smtp.quit() # 关闭SMTP连接
print("Email sent successfully!")
except Exception as e:
print("Failed to send email. Error message:", str(e))
在这个例子中,我们定义了一个名为send_email的函数,它接受发送者、接收者、主题和内容作为参数。函数内部首先创建一个MIMEText对象,并将内容作为邮件正文。然后,设置主题、发件人和收件人,并使用formatdate函数将当前时间作为邮件发送时间。接下来,我们创建一个SMTP对象,将发件人、收件人和消息转换为字符串并发送邮件。最后,关闭SMTP连接。
你可以将以上代码放入你的脚本中,并调用send_email函数来发送带有时间戳的电子邮件。以下是一个示例调用:
sender = "sender@example.com" receiver = "receiver@example.com" subject = "Hello!" body = "This is the body of the email." send_email(sender, receiver, subject, body)
以上示例将发送一封包含时间戳的电子邮件,并输出"Email sent successfully!"。如果发送邮件失败,则会输出相应的错误信息。
希望以上示例能够帮助你在Python中添加时间戳到电子邮件的主体,并成功发送邮件。
