PythonはSMTPメール送信を実装します

SMTP(Simple Mail Transfer Protocol)は、Simple Mail Transfer Protocolであり、送信元アドレスから宛先アドレスにメールを転送するために使用される一連のルールであり、メールの転送方法を制御します。

Pythonのsmtplibは、メールを送信するための非常に便利な方法を提供します。 smtpプロトコルをカプセル化するだけです。

SMTPオブジェクトの構文は次のとおりです。

import smtplib

smtpObj = smtplib.SMTP([host [, port [, local_hostname]]])

パラメータの説明:

Python SMTPオブジェクトは、sendmailメソッドを使用してメールを送信します。構文は次のとおりです。

SMTP.sendmail(from_addr, to_addrs, msg[, mail_options, rcpt_options])

パラメータの説明:

ここで、3番目のパラメーターに注意する必要があります。msgは文字列であり、メールを意味します。メールは通常、タイトル、送信者、受信者、メールの内容、添付ファイルなどで構成されています。メールを送信するときは、メッセージの形式に注意してください。この形式は、smtpプロトコルで定義されている形式です。

次の実装例では、sendmailなどのSMTPをサポートするサービスがマシンにインストールされている必要があります。

import smtplib

from email.mime.text import MIMEText
from email.header import Header

sender ='[email protected]' #送信者
receiver ='[email protected]' #レシーバー

# 3つのパラメーター:1つ目はテキストの内容、2つ目のプレーンはテキスト形式を設定し、3つ目はutfです。-8エンコーディングを設定する
message =MIMEText('QQは163のようなテストファイルを送信します....','plain','utf-8')
message['From']=Header('Pythonチュートリアル...') #送信者
message['To']=Header('テスト','utf-8')   #受信者

subject ='PythonSMTPテスト'
message['subject']=Header('utf-8')try:
 smtpObj = smtplib.SMTP('localhost')
 smtpObj.sendmail(sender, receiver, message.as_string())print("メールは正常に送信されました")
except smtplib.SMTPException:print("Error:メールを送信できません")

# メールは正常に送信されました

マシンにsendmailアクセスがない場合は、他のメールサービスプロバイダー(QQ、Netease、Googleなど)のSMTPアクセスを使用することもできます。

import smtplib

from email.mime.text import MIMEText
from email.header import Header

# サードパーティのSMTPサービス
host="smtp.qq.com" #サーバーをセットアップする
user="973708513"  #ユーザー名
password="xxxxxx"  #パスワード

sender ='[email protected]' #送信者
receiver ='[email protected]' #レシーバー

# 3つのパラメーター:1つ目はテキストの内容、2つ目のプレーンはテキスト形式を設定し、3つ目はutfです。-8エンコーディングを設定する
message =MIMEText('QQは163のようなテストファイルを送信します....','plain','utf-8')
message['From']=Header('Pythonチュートリアル...') #送信者
message['To']=Header('テスト','utf-8')   #受信者

subject ='PythonSMTPテスト'
message['subject']=Header('utf-8')try:
 smtpObj = smtplib.SMTP()
 smtpObj.connect(host,465)  #25はSMTPポート番号です
 smtpObj.login(user,password)
 smtpObj.sendmail(sender, receiver, message.as_string())print("メールは正常に送信されました")
except smtplib.SMTPException:print("Error:メールを送信できません")

# メールは正常に送信されました

上記は、PythonによるSMTPメール送信の実装の詳細な内容です。PythonSMTPの詳細については、ZaLou.Cnの他の関連記事に注意してください。

Recommended Posts

PythonはSMTPメール送信を実装します
Pythonがメール機能を実装する方法
Pythonはメールを送信するためのQQメールボックスを実装しています
PythonはQQメールボックスに基づいてSSL送信を実装します
Pythonはtic-tac-toeゲームを実装しています
Pythonはtic-tac-toeゲームを実装しています
Pythonはマンマシンゴバンを実装します
PythonはTetrisゲームを実装しています
Pythonは画像スティッチングを実装しています
Pythonはminesweeperゲームを実装しています
Pythonはスキャンツールを実装しています
Pythonはしきい値回帰を実装します
Pythonは地雷除去ゲームを実装しています
Pythonは電子辞書を実装しています
Pythonは推測ゲームを実装しています
Pythonは単純なタンクバトルを実装します
Pythonはudpチャットウィンドウを実装します
PythonはWeChat飛行機ゲームを実装しています
Pythonは単語推測ゲームを実装しています
Pythonは駐車場管理システムを実現
Pythonはデジタル爆弾ゲームを実装しています
PythonはTCPファイル転送を実装します
Pythonnumpyはローリングケースを実装します
OpenCVPythonはパズルゲームを実装しています
Pythonは単純なtic-tac-toeゲームを実装しています
Pythonはパスワード強度検証を実装します
Pythonは車の管理システムを実装しています
Pythonはコードブロックフォールディングを実装します
Pythonはパノラマ画像スティッチングを実装しています
Pythonは多次元配列ソートを実装しています
PythonがFTP機能を実装する方法
Pythonは平均シフトクラスタリングアルゴリズムを実装しています
Pythonは検証コード認識を実装します
Pythonは勾配降下法を実装しています
Pythonはテキストバージョンのminesweeperを実装しています
Pythonは画像スティッチング機能を実装しています
Pythonは実店舗のゲームを実装しています
Pythonは学生のパフォーマンス評価システムを実装しています
Pythonは単にスネークゲームを実装します
Pythonは為替レート変換操作を実装します
Pythonは文字列と数値のスプライシングを実装します
Pythonは10の古典的なソートアルゴリズムを実装しています
PythonはユニバーサルWebフレームワークを実装しています
Pythonは最も急な降下方法を実装します
Pythonは実際の銀行システムを実装しています
Pythonはデジタル爆弾ゲームプログラムを実装しています
Pythonはftpファイル転送機能を実装しています
Pythonはユーザー名とパスワードの検証を実装しています
Pythonがタイマー機能を実装する方法
Pythonは航空機戦争プロジェクトを実装します
Pythonは写真の水平ステッチを実装しています
PythonはGIFグラフを逆さまに実装します