Python - 电子邮件消息


电子邮件是一项允许我们通过互联网以电子方式发送消息的服务。它提供了一种在人们之间分发信息的高效、廉价且实时的方法。

电子邮件地址

每个电子邮件用户都会为其电子邮件帐户分配一个唯一的名称。该名称称为电子邮件地址。不同的用户可以根据电子邮件地址发送和接收消息。

电子邮件通常采用用户名@域名的形式。例如,webmaster@tutorialspoint.com 是一个电子邮件地址,其中 webmaster 是用户名,tutorialspoint.com 是域名。

  • 用户名和域名由@(at)符号分隔。

  • 电子邮件地址不区分大小写。

  • 电子邮件地址中不允许有空格。

电子邮件消息的前五行称为电子邮件标头。标头部分由以下字段组成:

  • 日期

  • 主题

  • 抄送

  • 密件抄送

发件人字段指示发件人的地址,即电子邮件的发送者。

日期

日期字段指示电子邮件的发送日期。

收件人字段指示收件人的地址,即电子邮件的发送对象。

主题

主题字段指示电子邮件的目的。它应该准确、切题。

抄送

CC代表抄送。它包括我们希望随时了解的收件人地址,但不完全是预期的收件人。

密件抄送

BCC代表黑抄本。当我们不希望一个或多个收件人知道邮件被抄送给其他人时,可以使用它。

问候语

问候语是实际消息的开头。例如。嗨先生或嗨大家等等。

文本

它代表消息的实际内容。

签名

这是电子邮件的最后部分。它包括发件人姓名、地址和联系电话。

Python 有 EmailMessage 类,可用于构建电子邮件消息。此类提供了自定义电子邮件的不同部分所需的方法,例如 TO 和 FROM 标签、主题行以及电子邮件的内容。

例子

在下面的示例中,我们创建一封电子邮件,其中包含电子邮件的所有必要部分。一旦我们打印出消息内容,我们就可以看到完整的电子邮件。

import email.message, email.policy, email.utils, sys
text = """Welcome to TutorialsPoint - Simple Easy Learning"""

message = email.message.EmailMessage(email.policy.SMTP)
message['To'] = 'you@yourdomain.com'
message['From'] = 'Learn '
message['Subject'] = 'A mail To you'
message['Date'] = email.utils.formatdate(localtime=True)
message['Message-ID'] = email.utils.make_msgid()
message.set_content(text)
sys.stdout.buffer.write(message.as_bytes())

当我们运行上面的程序时,我们得到以下输出 -

To: you@yourdomain.com
From: Learn 
Subject: A mail To you
Date: Wed, 13 Jun 2018 06:51:09 -0700
Message-ID: <152889786976.4106.5718297150260802709@ubuntu>
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit
MIME-Version: 1.0

Welcome to TutorialsPoint - Simple Easy Learning