Python での SendGrid
 
SendGrid (トランザクションおよびマーケティング電子メールの顧客コミュニケーション プラットフォーム) の親組織は Twilio です。
主なタスクは、動的なフォームでメールを送信することです。 これにより、複雑さと時間の消費が最小限に抑えられます。
最初に、サインインするための個人情報を設定する必要があります。その後、複数の機能を備えたダッシュボードが表示されます (アカウントが電子メールで確認された後)。 Marketing セクションに移動してから Sender セクションに移動すると、簡単にメールを送信できます。
最高のエクスペリエンスは、2 要素認証されたアカウントを持っている場合にのみ達成されます。 そうしないと、アカウントが審査段階に入り、時間がかかる可能性があります。
次のセクションでは、アカウント作成の詳細を処理する手順について説明します。 手順を 1つずつ実行します。
- 
SendGridに移動します。
- 
アカウントを作成。
- 
二要素認証を有効にする必要があります。
- 
アカウントの作成と確認が完了したら、左側のナビゲーション パネルの [設定] タブに移動します。
- 
ドロップダウン メニューからAPI キーオプションを選択します。
- 
API キーの作成タブをクリックして、アプリの秘密のAPI キーを作成します。
- 
API キー名を設定します。
- 
ラジオボタンからフルアクセスを選択します。
- 
最後に、作成して表示をクリックします。
API キーが安全な場所に保存されていることを確認してください。 技術的には、一度だけ明示的に表示されます。
次の部分では、送信者の電子メールを設定します。
- 
マーケティングに移動し、送信者をクリックします。
- 
Sender Managementページの右上隅にあるCreate New Senderをクリックします。
- 
ページのすべてのフィールドに入力し、[保存] をクリックします。
送信者として追加したメールを保護するために、メールに確認メールが送信される場合があります。
認証には、連絡先番号を使用できます。 問題が発生した場合は、Google Authy をダウンロードして、Authy で使用する連絡先番号を使用できます。
この受動的なプロセスがあなたを救うかもしれません。
ただし、この段階でメールを送信すると、送信者は確認のために毎回メールをチェックする必要があります。 次のコーディング セクションでは、API キーを使用して複数の受信者にメールを送信する方法を示します。
SendGrid API キーを使用して複数のメールを送信する
最初に、ローカル コンピューターにプロジェクト フォルダーを作成する必要があります。 また、Python 仮想環境を開始します。
それを作成するには、そのフォルダー内の terminal/cmd を開く必要があります。 次のコマンドを入力します。
python -m venv YourFolderName
cd YourFolderName
このフォルダーにスクリプト ファイルを作成します (使用したフォルダー名: sendgrid)。 スクリプト ファイルとして main.py を作成しました。 次に、依存関係をインストールします。
その前に、仮想環境を有効にする必要があります。 そのため、sendgrid フォルダーで、ターミナルを開き、コマンドをフォローアップします。
Scripts\activate
pip install sendgrid
pip install python-dotenv
.env ファイル (環境変数を保存するファイル) を作成します。 そこで、次のコードを保持します。
export API_KEY=YOUR_SENDGRID_API_KEY
ここで、API_KEY 変数には、SendGrid Web サイトから以前に保存した API キーを保持します。 次に、コーディングセクションに進みます。
コードスニペット:
import os
import dotenv
from sendgrid import SendGridAPIClient
from sendgrid.helpers.mail import Mail, Email, To, Content
dotenv.load_dotenv()
sgc = SendGridAPIClient(api_key=os.environ.get("API_KEY"))
from_email = Email("sender@example.com")  # Change to your verified sender
# Change to your recipient
to_email = [To("receiver1@example.com"), To("receiver2@example.com")]
subject = "Sending with SendGrid is Fun"
content = Content("text/plain", "and easy to do anywhere, even with Python")
mail = Mail(from_email, to_email, subject, content, is_multiple=True)
# is_multiple is used to specify that the mail has multiple recipients
# Get a JSON-ready representation of the Mail object
mail_json = mail.get()
# Send an HTTP POST request to /mail/send
try:
    response = sgc.client.mail.send.post(request_body=mail_json)
    print(response.status_code)
    print(response.headers)
except Exception as e:
    print(e)
dotenv は API キーを辞書としてインポートし、それを呼び出した後、送信ごとに Web サイトのダッシュボードに更新が表示されます。 一度に複数のメールを送信しました。
出力には、SendGrid ダッシュボードとアクティビティ フィードに表示されるプレビューが表示されます。
出力:


