2

这是通过python程序发送邮件的方法。

def Send_Mail(self, username, password, receiver, subject, body):
    username = str(username)
    password = str(password)
    receiver = str(receiver)
    subject = str(subject)
    body = str(body)
    Username = username
    Password = password
    Sender = username
    Destination = [receiver]
    Subject = subject
    Content = body
    text_subtype = 'html'
    SMTPserver = 'smtp.gmail.com'
    msg = MIMEText(Content, text_subtype)
    msg['Subject'] = Subject
    msg['From'] = Sender
    conn = SMTP(SMTPserver)
    conn.set_debuglevel(False)
    conn.login(Username, Password)
    conn.sendmail(Sender, Destination, msg.as_string())
    conn.close()

通过调用此方法

Classname.Send_Mail(<emailid>,<password>,<destination email-id>,<subject>,<body>

此代码运行良好,但需要在发送邮件时设置到期日期,以便发送的邮件必须在指定时间后自动从收件箱中删除。帮助将不胜感激。

4

3 回答 3

4

Expiry-Date被替换Expires为 SMTP 标头,以指示电子邮件消息的有用性到期。请参阅RFC 4021 的相关部分

也就是说,虽然它是标准化的,但我认为它并没有被广泛采用,并且标头并不能保证消息会被删除。不过, Microsoft Outlook 确实会显示带有删除线样式的过期消息

于 2016-10-08T22:14:41.933 回答
3

在邮件中设置“Expiry-Date”标头,大多数客户都会承认它(并且要么过期,标记为已删除,请求许可等)

于 2013-12-13T08:03:59.110 回答
2

据我所知,在 SMTP 或其他与邮件相关的标准中的任何地方都没有“自动删除”之类的东西。此外,我从未听说过这样的“功能”。

所以答案是:你不能

(也许他们是支持此类事情的邮件客户端,但这将是“仅在客户端 X 中有效”功能。因此,为了获得更有用的答案,您必须提供目标客户端。)

于 2012-11-05T17:37:59.650 回答