[Python] eMail 보내기
2023. 3. 26. 17:31ㆍIT
기획 중인 RPA 프로젝트 중에서 자동으로 데일리 이메일 발송을 기획하고 있다. 처음에는 가장 많이 사용하는 지메일을 사용하려고 했다.
문제는 보안이 강화되면서 일반적으로 사용하는 SMTP 방법은 통하지가 않았다. 구글 클라우드를 사용하면 방법이 있는 듯 했다. 전에 구글 클라우드를 사용한 경험이 있었다. 그런데 비용을 지불하는 것으로 변경이 되었다. 당장은 무료 사용이지만 말이다. $300까지는 무료라고 하는데 그래도 내키지 않았다.
그래서 네이버 메일로 방향을 틀었다.
샘플로 검색이 되는 코드들이 잘 동작을 한다. 모방은 창조의 어머니라고 했던가?
그래도 다른 사람들의 블로그에 있는 코드들은 가져다 쓰기 뭐했다.
그래서 ChatGPT에 코드 생성을 시켰다.
import smtplib
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
# Set up the connection to the SMTP server
smtp_server = 'smtp.naver.com'
smtp_port = 587
smtp_username = 'sender-email@naver.com'
smtp_password = 'sender-password'
smtp_connection = smtplib.SMTP(smtp_server, smtp_port)
smtp_connection.ehlo()
smtp_connection.starttls()
smtp_connection.login(smtp_username, smtp_password)
# Define the email message
from_email = 'sender-email@naver.com'
to_email = 'receipant@gmail.com'
subject = 'Test HTML email'
html_body = """
<html>
<body>
<h1>This is a test HTML email sent using Python!</h1>
<p>You can use HTML tags to format your message.</p>
</body>
</html>
"""
message = MIMEMultipart()
message['From'] = from_email
message['To'] = to_email
message['Subject'] = subject
message.attach(MIMEText(html_body, 'html'))
# Send the email
smtp_connection.sendmail(from_email, to_email, message.as_string())
# Close the connection to the SMTP server
smtp_connection.quit()
잘 동작을 한다.
프로젝트에서 함수로 만들어 잘 사용할 수 있겠다.
반응형
'IT' 카테고리의 다른 글
[Python] Web Crawling - 다음 뉴스 (0) | 2023.03.26 |
---|---|
[Python] ChatGPT (0) | 2023.03.26 |
[Python] Google News Scrawling - GoogleNews (0) | 2023.03.26 |
AI로 이미지 생성하기 - sporky.ai (1) | 2023.03.25 |
[Python] 문자열 추출하기 (0) | 2023.03.18 |