PythonでSMTPサーバーに接続する

Simple Mail Transfer Protocol(SMTP)は、クライアントアプリケーションから電子メールサーバーに電子メールメッセージを送信するためによく知られており、一般的に使用されているプロトコルです。電子メール自動化機能を実装しているときに、Pythonアプリケーション内からSMTPサーバーに接続する必要がある場合があります。このようなシナリオでは、この記事では、PythonでプログラムによってSMTPサーバーに接続する方法について説明します。さらに、SMTPサーバーに接続した後に電子メールを送信する方法を学習します。

SMTPサーバーに接続するPythonライブラリ

Aspose.Email for Pythonは、Pythonベースの電子メールクライアントアプリケーションを作成できるすばらしいライブラリです。ライブラリを使用すると、複雑なコードを記述せずにSMTPサーバーに簡単に接続してアクセスできます。次のコマンドを使用して、PyPIからライブラリをインストールできます。

> pip install Aspose.Email-for-Python-via-NET

PythonでSMTPサーバーに接続する

SMTPサーバーに接続する前に、次のことを知っておく必要があります。

  • ホスト
  • ユーザー名
  • パスワード
  • ポート

それらを入手したら、次の手順を使用してSMTPクライアントを構成できます。

  • SmtpClientクラスのオブジェクトを作成します。
  • SmtpClientオブジェクトを使用して、ホスト、ユーザー名、パスワード、およびポート番号を設定します。
  • SmtpClient.security_optionsプロパティを使用してセキュリティオプションを設定します。
  • この時点で、SmtpClientオブジェクトを使用してサーバーと通信できます。

次のコードサンプルは、PythonでSMTPサーバーとの接続を設定する方法を示しています。

from aspose.email import SmtpClient, SecurityOptions

# Create SMTP client
client = SmtpClient()

# Set properties
client.host = "smtp.gmail.com"
client.port = 587
client.username = "username"
client.password = "password"

# Set security options
client.security_options = SecurityOptions.SSLEXPLICIT

PythonでSMTP経由でメールを送信する

接続を確立したら、PythonでSMTP経由でメールを送信することができます。そのための手順は次のとおりです。

  • SmtpClientクラスのオブジェクトを作成し、資格情報とセキュリティオプションを設定します。
  • MailMessageクラスのオブジェクトを作成します。
  • 電子メールメッセージの件名、本文、宛先、送信元、およびその他のフィールドを設定します。
  • SmtpClient.send(MailMessage)メソッドを使用してメッセージを送信します。

次のコードサンプルは、PythonでSMTP経由でメールを送信する方法を示しています。

import aspose.email as ae

# Create email
eml = ae.MailMessage()
eml.subject = "Message with Plain Text Body"
eml.body = "This is plain text body."
eml.from_address = "from@gmail.com"
eml.to.append(ae.MailAddress("to@gmail.com", "Recipient 1"))

# Configure SMTP Client
client = ae.SmtpClient("smtp.gmail.com", 995, "username", "password")
client.security_options = ae.SecurityOptions.AUTO

# Send email
client.send(eml)

無料のAPIライセンスを取得する

一時ライセンスの取得を使用すると、Aspose.EmailforPythonを無料で試して使用できます。

結論

この記事では、PythonでSMTPサーバーに接続する方法を学びました。さらに、PythonでプログラムによってSMTPサーバーに接続した後に電子メールを送信する方法を見てきました。さらに、documentationを使用して、Aspose.Emailの詳細を調べることができます。また、フォーラムで質問や質問を共有することもできます。

関連項目