Flask는 파이썬 웹 프레임워크로, 이메일 전송 기능을 쉽게 구현할 수 있습니다. 이번 포스트에서는 Flask를 이용하여 이메일을 발송하는 방법에 대해 살펴보겠습니다.
필요한 패키지 설치
먼저, Flask와 Flask-Mail 패키지를 설치해야 합니다. Flask-Mail은 Flask와 함께 사용할 수 있는 이메일 관련 라이브러리입니다.
pip install flask
pip install flask-mail
Flask-Mail 설정
Flask-Mail을 사용하기 위해 앱 설정에서 이메일 서버와 인증 정보를 설정해야 합니다. Flask 앱의 config
에서 다음과 같이 설정합니다.
app.config['MAIL_SERVER'] = 'smtp.example.com'
app.config['MAIL_PORT'] = 587
app.config['MAIL_USE_TLS'] = True
app.config['MAIL_USERNAME'] = 'your-email@example.com'
app.config['MAIL_PASSWORD'] = 'your-email-password'
위 예제에서는 Gmail의 SMTP 서버를 사용하고 있습니다. 따라서, MAIL_SERVER
를 'smtp.gmail.com'
, MAIL_PORT
를 587
로 설정하고, MAIL_USE_TLS
를 True
로 설정해야 합니다. 또한, 이메일 발송에 사용할 이메일 계정의 아이디와 비밀번호를 MAIL_USERNAME
과 MAIL_PASSWORD
에 설정해야 합니다.
이메일 발송하기
이제 실제로 이메일을 발송해보겠습니다. Flask에서 이메일을 발송하기 위해서는 flask_mail
모듈을 import 해야합니다.
from flask_mail import Mail, Message
이메일을 발송하는 예제 코드는 다음과 같습니다.
mail = Mail(app)
@app.route('/send_email')
def send_email():
msg = Message('Hello', sender='your-email@example.com', recipients=['recipient@example.com'])
msg.body = "This is a test email."
mail.send(msg)
return 'Email has been sent!'
위 예제에서는 /send_email
경로로 접속 시 이메일이 발송되도록 설정하였습니다. Message
객체를 생성하고, sender
와 recipients
를 설정합니다. body
에는 이메일 내용을 작성하면 됩니다. 이후 mail.send(msg)
를 호출하여 이메일을 발송합니다.
Flask를 실행하고 /send_email
경로에 접속하면, 설정한 이메일 서버를 통해 이메일이 발송될 것입니다.
결론
Flask를 이용하여 이메일을 발송하는 방법에 대해 알아보았습니다. Flask-Mail을 사용하면 쉽게 이메일 발송 기능을 구현할 수 있으며, 이를 활용하여 다양한 웹 애플리케이션을 개발할 수 있습니다. Flask를 사용하여 이메일 발송 기능을 구현해보세요!