Python電子郵件

電子郵件是一項服務,它使我們可以通過互聯網以電子方式發送消息。它提供了一種在人們之間分發資訊的高效,廉價且即時的方式。

電子郵件地址

每個電子郵件用戶都為其電子郵件帳戶分配了唯一的名稱。此名稱稱為電子郵件地址。不同的用戶可以根據電子郵件地址發送和接收消息。
電子郵件通常採用username@domainname的形式。例如,webmaster@xuhuhu.com是一個電子郵件地址,其中webmaster是用戶名,而xuhuhu.com是功能變數名稱。

  • 用戶名和功能變數名稱之間用@符號分隔。
  • 電子郵件地址不區分大小寫。
  • 電子郵件地址中不允許有空格。

電子郵件的前五行稱為電子郵件標題。標頭部分包含以下字段:

  • From - 此字段表示發件人的地址,即發送電子郵件的人。
  • Date - 此字段指示發送電子郵件的日期。
  • To - 此字段指示收件人的地址,即電子郵件發送給的收件人。
  • Subject - 此字段指示電子郵件的用途。它應該是準確的,並指向重點。
  • CC - CC代表複本。它包括要及時通知的收件人地址,但不完全是預期的收件人。
  • BCC - 當不希望一個或多個收件人知道在郵件上複製了其他人時使用它。
  • Greeting - 問候語是實際資訊的開頭。例如。嗨,先生或嗨,大家好!
  • Text - 它代表消息的實際內容。
  • Signature - 這是電子郵件的最後一部分。它包括發件人姓名,地址和聯繫電話。

Python具有EmailMessage類,可用於構建電子郵件。此類是自定義電子郵件消息不同部分(如TO和FROM標記,主題行以及電子郵件內容)所需的方法。

 示例

在下面的示例中,我們將創建一封電子郵件,其中包含電子郵件的所有必要部分。當列印出消息的內容,我們就可以看到完整的電子郵件。

import email.message, email.policy, email.utils, sys
text = """Welcome to zaixian - 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: <152xxxx976.4xx6.5xxx5026x0802709@ubuntu>
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit
MIME-Version: 1.0

Welcome to zaixian - Simple Easy Learning

上一篇: Python Telnet 下一篇: Python SMTP