Pythonを使用してSMTPサーバーに接続する

Simple Mail Transfer Protocol(SMTP)は、クライアントアプリケーションから電子メールサーバーへの電子メールメッセージの送信を処理する、最も一般的に使用される電子メールプロトコルです。さまざまな場合、電子メールクライアントはPythonアプリケーション内に実装され、SMTP経由で電子メールを送信します。このようなシナリオでは、この記事ではPythonを使用してSMTPサーバーに接続する方法について説明します。さらに、SMTP経由で電子メールを送信する方法を示します。

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

Aspose.Email for Python via .NETは、メールを作成、送信、操作するためのPythonライブラリです。これにより、Pythonで独自の電子メールクライアントをシームレスに実装できます。このライブラリを使用してSMTPサーバーに接続します。次のコマンドを使用して、PyPIからライブラリをインストールできます。

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

または、以下の手順に従って手動でインストールすることもできます。

  • ダウンロードセクションからインストール可能な.whlファイルをダウンロードします。
  • コマンドラインから、次のコマンドを使用します。pip install «FileName».whlを使用してAPIをインストールします。
  • GitHubからソースコードサンプルの完全なパッケージをダウンロードします。

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

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

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

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

  • まず、SmtpClientクラスのオブジェクトを作成します。
  • 次に、SmtpClient.host, SmtpClient.username, SmtpClient.password, およびSmtpClient.portプロパティをそれぞれ使用して、ホスト、ユーザー名、パスワード、およびポート番号を設定します。
  • SmtpClient.security_optionsプロパティを使用してセキュリティオプションを設定します。
  • 最後に、SmtpClientオブジェクトを使用してメールボックスにアクセスします。

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

import aspose.email as ae
from aspose.email import SecurityOptions, SmtpClient

# create SMTP client 
client = SmtpClient()

# set host, port, username and password
client.host = "smtp.gmail.com"
client.port = 587
client.username = "username"
client.password = "password"

# set security options for SSL emabled server
client.security_options = SecurityOptions.SSLEXPLICIT
    

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

SMTPサーバーへの接続を確立した後、電子メールを送信できます。次のコードサンプルは、PythonでSMTP経由でメールを送信する方法を示しています。

import aspose.email as ae
from aspose.email import SecurityOptions, SmtpClient
    
# create a new message
eml = ae.MailMessage()

# set subject, body, to and from addresses
eml.subject = "Message with Html Body"
eml.is_body_html = True
eml.html_body = "<html><body>This is the <b>HTML</b>body</body></html>"
eml.from_address = "from@gmail.com"
eml.to.append(ae.MailAddress("to@gmail.com", "Recipient 1"))

# send email using Smtp Client
client = SmtpClient("smtp.gmail.com", 995, "username", "password")
client.security_options = SecurityOptions.AUTO
client.send(eml)
    

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

一時ライセンスの取得により、.NET経由でAspose.EmailforPythonを無料で使用できます。

結論

この記事では、Pythonを使用してSMTPサーバーに接続する方法を学習しました。また、PythonでSMTP経由でメールを送信する方法を見てきました。 ドキュメントにアクセスして、.NET経由のAspose.EmailforPythonの詳細を確認できます。ご不明な点やご質問がございましたら、フォーラムからお気軽にお問い合わせください。

関連項目