SeouliteLab

파이썬으로 이메일 발송하기: SendGrid API 활용 방법 본문

카테고리 없음

파이썬으로 이메일 발송하기: SendGrid API 활용 방법

Seoulite Lab 2024. 4. 19. 08:57

1. 단일 이메일 발송하기

SendGrid API를 사용하여 단일 이메일을 발송하는 예제를 살펴보겠습니다.

import os
from sendgrid import SendGridAPIClient
from sendgrid.helpers.mail import Mail

# SendGrid API 키 설정
sg_api_key = os.environ.get('SENDGRID_API_KEY')
sg = SendGridAPIClient(api_key=sg_api_key)

# 이메일 구성
message = Mail(
    from_email='from@example.com',
    to_emails='to@example.com',
    subject='Test Email',
    plain_text_content='This is a test email sent from SendGrid.'
)

# 이메일 발송
response = sg.send(message)
print(response.status_code)
print(response.body)
print(response.headers)

위 코드는 SendGrid API를 사용하여 단일 이메일을 발송하는 과정을 보여줍니다.

2. 이메일에 첨부 파일 추가하기

이메일에 파일을 첨부하여 발송하는 예제를 살펴보겠습니다.

import os
from sendgrid import SendGridAPIClient
from sendgrid.helpers.mail import Mail, Attachment, FileContent, FileName, FileType, Disposition

# SendGrid API 키 설정
sg_api_key = os.environ.get('SENDGRID_API_KEY')
sg = SendGridAPIClient(api_key=sg_api_key)

# 파일 읽기
with open('attachment.pdf', 'rb') as f:
    file_data = f.read()

# 이메일 구성
message = Mail(
    from_email='from@example.com',
    to_emails='to@example.com',
    subject='Email with Attachment',
    plain_text_content='This is an email with an attachment.'
)

# 첨부 파일 추가
attachment = Attachment(
    FileContent(file_data),
    FileName('attachment.pdf'),
    FileType('application/pdf'),
    Disposition('attachment')
)
message.attachment = attachment

# 이메일 발송
response = sg.send(message)
print(response.status_code)
print(response.body)
print(response.headers)

위 코드는 SendGrid API를 사용하여 이메일에 파일을 첨부하여 발송하는 과정을 보여줍니다.

3. 이메일에 HTML 내용 추가하기

이메일의 내용을 HTML 형식으로 작성하여 발송하는 예제를 살펴보겠습니다.

import os
from sendgrid import SendGridAPIClient
from sendgrid.helpers.mail import Mail

# SendGrid API 키 설정
sg_api_key = os.environ.get('SENDGRID_API_KEY')
sg = SendGridAPIClient(api_key=sg_api_key)

# 이메일 구성
message = Mail(
    from_email='from@example.com',
    to_emails='to@example.com',
    subject='HTML Email',
    html_content='<h1>This is an HTML email sent from SendGrid.</h1>'
)

# 이메일 발송
response = sg.send(message)
print(response.status_code)
print(response.body)
print(response.headers)

위 코드는 SendGrid API를 사용하여 HTML 형식의 이메일을 발송하는 과정을 보여줍니다.

SendGrid API를 사용하면 파이썬에서 간편하게 이메일을 발송할 수 있습니다.