検索
ホームページバックエンド開発Python チュートリアルsmtplib モジュールを使用して Python 3.x で電子メールを送信する方法

smtplib モジュールを使用して Python 3 で電子メールを送信する方法.x

概要:
電子メールは現代社会における重要なコミュニケーション手段です。個人であろうと企業であろうと、電子メールは次のことを行う必要があります。情報の転送とコミュニケーション。 Python では、smtplib モジュールを使用して電子メールを簡単に送信できます。この記事では、smtplib モジュールを使用して Python 3.x で電子メールを送信する方法と、対応するコード例を紹介します。

ステップ 1: smtplib モジュールと関連する依存モジュールをインポートする

まず、smtplib モジュールとその他の関連する依存モジュールをインポートする必要があります。 smtplib を使用して Python で電子メールを送信するには、次のモジュールが必要です。

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

ステップ 2: 接続SMTP サーバーに接続してログインします

次に、SMTP サーバーに接続してログインする必要があります。 SMTP (Simple Mail Transfer Protocol) は、電子メールの送信に使用されるプロトコルです。 smtplib を使用してメールを送信する場合、SMTP サーバーのアドレスとポート、および状況に応じて認証が必要かどうかを指定する必要があります。

電子メール プロバイダーは通常、SMTP サーバーのアドレスとポート、および対応するアカウント番号とパスワードを提供します。 QQ メールボックスを例にとると、SMTP サーバーのアドレスは smtp.qq.com、ポートは 465 または 587 で、認証が必要です。

smtp_server = 'smtp.qq.com'
smtp_port = 465
sender = 'your-email@qq.com'
password = 'your-email-password'

smtp_obj = smtplib.SMTP_SSL(smtp_server, smtp_port) # SMTP オブジェクトを作成し、SSL を使用して SMTP サーバーに接続します
smtp_obj.login(sender, password) # SMTP サーバーにログインします

ステップ 3: 電子メールの内容とタイトルを設定する

電子メールを送信する前に、電子メールの内容とタイトルを設定する必要があります。テキスト コンテンツを含む電子メールは、email.mime.text モジュールの MIMEText クラスを使用して簡単に作成できます。

msg = MIMEText('mail content', 'plain', 'utf-8') # MIMEText オブジェクトを作成します。最初のパラメータはメールの内容、2 番目のパラメータはコンテンツ タイプ、3 番目のパラメータはメールの内容です。パラメータはコンテンツ タイプです。パラメータは文字エンコーディングです。
msg['From'] = Header('sender', 'utf-8') # 送信者を設定します
msg['To'] = Header( 'recipient' , 'utf-8') #受信者を設定します
msg['Subject'] = Header('Email title', 'utf-8') #E メールヘッダーを設定します

ステップ 4 : メールを送信します

メールの内容とタイトルを設定したら、メールを送信できます。 SMTP オブジェクトの sendmail メソッドを使用して電子メールを送信できます。

receiver = 'receiver-email@example.com' #受信者の電子メール アドレス
smtp_obj.sendmail(sender,Receiver, msg.as_string()) #電子メールの送信

ステップ 5: SMTP 接続を閉じる

電子メールを送信した後、リソースを解放するには SMTP 接続を閉じる必要があります。

smtp_obj.quit() # SMTP 接続を閉じます

完全なサンプル コードは次のとおりです。

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

smtp_server = 'smtp.qq.com'
smtp_port = 465
sender = 'your-email@qq.com'
password = 'your -email-password '

smtp_obj = smtplib.SMTP_SSL(smtp_server, smtp_port)
smtp_obj.login(送信者, パスワード)

msg = MIMEText('メール内容', 'プレーン' , 'utf-8')
msg['From'] = Header('Sender', 'utf-8')
msg['To'] = Header('Recipient', 'utf-8' )
msg['件名'] = ヘッダー('メールタイトル', 'utf-8')

receiver = 'receiver-email@example.com'
smtp_obj.sendmail(sender,受信者、msg.as_string())

smtp_obj.quit()

結論:
Python の smtplib モジュールを使用した電子メールの送信は非常に簡単で、わずか数行のコードで完了できます。 。上記サンプルコードのメール内容、件名、宛先等は実際の状況に応じて変更する必要があります。この記事が、smtplib モジュールを使用して Python 3.x で電子メールを送信する方法を学ぶのに役立つことを願っています。

以上がsmtplib モジュールを使用して Python 3.x で電子メールを送信する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
PythonスクリプトがUNIXで実行されない可能性がある一般的な理由は何ですか?PythonスクリプトがUNIXで実行されない可能性がある一般的な理由は何ですか?Apr 28, 2025 am 12:18 AM

PythonスクリプトがUNIXシステムで実行できない理由には、次のものが含まれます。1)CHMOD XYOUR_SCRIPT.PYを使用して実行権限を付与する不十分な権限。 2)shebangラインが正しくないか欠落している場合、#!/usr/bin/envpythonを使用する必要があります。 3)環境可変設定が誤っていない場合、OS.Environデバッグを印刷できます。 4)間違ったPythonバージョンを使用して、Shebangラインまたはコマンドラインでバージョンを指定できます。 5)仮想環境を使用して依存関係を分離する依存関係の問題。 6)構文エラー、python-mpy_compileyour_script.pyを使用して検出します。

Pythonアレイを使用することがリストを使用するよりも適切なシナリオの例を挙げてください。Pythonアレイを使用することがリストを使用するよりも適切なシナリオの例を挙げてください。Apr 28, 2025 am 12:15 AM

Pythonアレイの使用は、リストよりも大量の数値データの処理に適しています。 1)配列を保存するメモリを保存します。2)アレイは数値的な値で動作するのが高速です。3)アレイフォースタイプの一貫性、4)アレイはCアレイと互換性がありますが、リストほど柔軟で便利ではありません。

Pythonでリストと配列を使用することのパフォーマンスへの影響は何ですか?Pythonでリストと配列を使用することのパフォーマンスへの影響は何ですか?Apr 28, 2025 am 12:10 AM

listSareのより良い前提条件とmixdatatypes、whilearraysares優れたスナリカル計算砂の砂を大きくしたデータセット。

Numpyは、大きな配列のメモリ管理をどのように処理しますか?Numpyは、大きな配列のメモリ管理をどのように処理しますか?Apr 28, 2025 am 12:07 AM

numpymanagesmemoryforlargearrayseffictificleusing biews、copies、andmemory-mappedfiles.1)rewsinging withotingcopying、directmodifying theoriginalArray.2)copiescanbecreatedwithcopy()methodforpreservingdata.3)Memory-MapplehandLemassiutasedatasetasedatasetasetasetasetasetasedas

モジュールのインポートが必要なのはどれですか:リストまたは配列は?モジュールのインポートが必要なのはどれですか:リストまたは配列は?Apr 28, 2025 am 12:06 AM

listsinpythondonotrequireimportingamodule、whilearrays fromthearraymoduledoneedanimport.1)listsarebuiltin、versatile、andcanholdmixeddatypes.2)araysaremoremory-efficient-fornumerumerumerumerumerumerdatabutでき、対象となるンドベフェフサメタイプ。

どのデータ型をPythonアレイに保存できますか?どのデータ型をPythonアレイに保存できますか?Apr 27, 2025 am 12:11 AM

Pythonlistscanstoreanydatatype,arraymodulearraysstoreonetype,andNumPyarraysarefornumericalcomputations.1)Listsareversatilebutlessmemory-efficient.2)Arraymodulearraysarememory-efficientforhomogeneousdata.3)NumPyarraysareoptimizedforperformanceinscient

Pythonアレイに間違ったデータ型の値を保存しようとするとどうなりますか?Pythonアレイに間違ったデータ型の値を保存しようとするとどうなりますか?Apr 27, 2025 am 12:10 AM

heouttemptemptostoreavure ofthewrongdatatypeinapythonarray、yure counteractypeerror.thisduetothearraymodule'sstricttypeeencultionyを使用します

Python Standard Libraryの一部はどれですか:リストまたは配列はどれですか?Python Standard Libraryの一部はどれですか:リストまたは配列はどれですか?Apr 27, 2025 am 12:03 AM

PythonListSarePartOfThestAndardarenot.liestareBuilting-in、versatile、forStoringCollectionsのpythonlistarepart。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

PhpStorm Mac バージョン

PhpStorm Mac バージョン

最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

VSCode Windows 64 ビットのダウンロード

VSCode Windows 64 ビットのダウンロード

Microsoft によって発売された無料で強力な IDE エディター

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

MantisBT

MantisBT

Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール