Python の電子メール モジュールを使用して、添付ファイル付きの電子メールを送信できます。
SMTP (Simple Mail Transfer Protocol)
メール転送エージェント (MTA) プログラムは、SMTP プロトコルを使用して受信者のメール サーバーに電子メールを送信します。 SMTP プロトコルは電子メールの送信にのみ使用でき、電子メールの受信には使用できません。ほとんどの送信メール サーバー (送信メール サーバー) は SMTP プロトコルを使用します。 SMTP プロトコルのデフォルトの TCP ポート番号は 25 です。
SMTP プロトコルの重要な機能は、電子メールを中継する機能です。これは 2 つの状況で機能します。1 つは電子メールがクライアントからサーバーに送信されるとき、もう 1 つは電子メールが 1 つのサーバーから別のサーバーに送信されるときです。
POP3 (ポスト オフィス プロトコル) と IMAP (インターネット メッセージ アクセス プロトコル)
POP プロトコルと IMAP プロトコルは、電子メールの受信に使用される 2 つの最も一般的なプロトコルです。ほとんどすべてのメール クライアントとサーバーは両方のプロトコルをサポートしています。
POP3 プロトコルは、ユーザーにメールボックスにアクセスして電子メールを取得するための簡単で標準的な方法を提供します。 POP3 プロトコルを使用する電子メール クライアントの通常の作業プロセスは、サーバーに接続し、すべてのメッセージを取得してユーザーのホストに保存し、サーバーからメッセージを削除して切断します。 POP3 プロトコルのデフォルトの TCP ポート番号は 110 です。
IMAP プロトコルは、ユーザーがオフラインで読むことを可能にする便利な電子メール ダウンロード サービスも提供します。 IMAP プロトコルを使用する電子メール クライアントは通常、ユーザーが明示的に削除するまでメッセージをサーバー上に保持します。この機能により、複数のクライアントが同時にメールボックスを管理できるようになります。 IMAP プロトコルには概要閲覧機能があり、ユーザーは電子メールの到着時刻、件名、送信者、サイズなどの情報をすべて読んだ上で、ダウンロードするかどうかを決定できます。 IMAP プロトコルのデフォルトの TCP ポート番号は 143 です。
電子メール形式 (RFC 2822)
各電子メールには、ヘッダーと本文の 2 つの部分があり、空白行で区切られています。
電子メール ヘッダーの各フィールド (フィールド) には、コロンで区切られたフィールド名とフィールド値の 2 つの部分が含まれます。注意すべき 2 つのフィールドがあります: From フィールドと Sender フィールドです。 From フィールドは電子メールの作成者を示し、Sender フィールドは電子メールの送信者を示します。 From フィールドに複数の作成者が含まれる場合は、Sender フィールドを指定する必要があります。From フィールドの作成者が 1 人のみで、作成者と送信者が同じ場合は、Sender フィールドを使用しないでください。それ以外の場合は、From フィールドと Sender フィールドを指定する必要があります。同時に使用する必要があります。
電子メールの本文には電子メールのコンテンツが含まれており、そのタイプは電子メール ヘッダーの Content-Type フィールドで指定されます。 RFC 2822 で定義された電子メール形式では、電子メールの本文は単なる ASCII エンコードされた文字シーケンスです。
MIME (多目的インターネットメール拡張機能) (RFC 1341)
MIME は、非 ASCII エンコードテキスト、非テキスト添付ファイル、および複数の部分 (マルチパート) を含む電子メール本文をサポートするために電子メール形式を拡張します。
Python メール モジュール
1. クラスメール.メッセージ.メッセージ
__getitem__、__setitem__ は、obj[key] の形式でアクセスを実装します。
Msg.attach(playload): 現在のメッセージにプレイロードを追加します。
Msg.set_playload(playload): Msg オブジェクト全体のメール本文を playload に設定します。
Msg.add_header(_name, _value, **_params): 電子メールのヘッダー フィールドを追加します。
2. class email.mime.base.MIMEBase(_maintype, _subtype, **_params)
すべての MIME クラスの基本クラスは、email.message.Message クラスのサブクラスです。
3. クラス email.mime.multipart.MIMEMultipart()
電子メール モジュールのバージョン 3.0 (Python 2.3 ~ Python 2.5) では、このクラスは email.MIMEMultipart.MIMEMultipart にあります。
このクラスは MIMEBase の直接のサブクラスであり、マルチパートの電子メール本文を含む MIME オブジェクトを生成するために使用されます。
4. クラス email.mime.text.MIMEText(_text)
文字列 _text を使用して、MIME オブジェクトの本文テキストを生成します。
コードの実装
Python を利用した smtplib库实现邮件送信
アイテムは送信できます
その後学习了一点定义msg
python 中に有几个类库生成丰富的 msg 格式
总结一简単的 MIMEText,可以编辑许多邮件头情報,可编辑邮件格式
メールから.MIMEText import MIMEText
msg=MIMEText("要送信内容","格式,例:html,plain","编码,例:gb2312,utf-8")
msg['From']= '邮件中に表示される送信者の名前'
msg['To']='邮件中に表示される送信者の名前'
msg['Subject']='邮件标题'
これらの都は、不設置