gmail 지메일의 앱 비밀번호로 메일 발송하기(c# or python)

 

gmail 지메일의 앱 비밀번호로 메일 발송하기(c# or python)





gmail 로 메일을 프로그램으로 발송하고자 할 경우, gmail 의 비밀번호로 하지 않고 앱 비밀번호를 통해 사용이 가능합니다. 기타(맞춤 이름)을 선택해서 이름을 간단히 stmp client 라고 명명하고 저장하면 16자리 영문 소문자 난수를 알려줍니다. 이 부분이 앱에서 비밀번호를 할당할때 사용하면 되겠습니다.

 

 

자세한 내용은 여기 블로그를  참고해 주세요. (https://docs.3rdeyesys.com/etc/etc_smtp_auth_to_google_gmail_account.html#%EC%95%B1-%EB%B9%84%EB%B0%80%EB%B2%88%ED%98%B8-%EC%84%A4%EC%A0%95)

 

 

c# 기반으로 gmail 발송하기

 

아래는 c# 을 기반으로 구현된 코드이며, "앱비밀번호"라고 표기된 부분에 16자리 영문랜덤을 기재해 주시면 됩니다.

MailMessage mail = new MailMessage();
mail.To.Add(txtBox_to.Text);
// txtBox_to에 입력된 이메일 받을 사람 텍스트를 불러옴
mail.From = new MailAddress(txtBox_From.Text);
// txtBox_From에 입력된 이메일을 회신받을 주소 텍스트를 불러옴
mail.Subject = txtBox_Subject.Text;
// txtBox_Subject에 입력된 이메일 제목 텍스트를 불러옴
mail.Body = txtBox_Mail.Text + "회신 받을 주소 : " + txtBox_From.Text;
// 이메일 전송 시에 txtBox_Mail에 입력된 텍스트와 회신 받을 주소 텍스트를 한번에 보냄

mail.IsBodyHtml = true;
// HTML 사용
mail.Priority = MailPriority.High;
// 메일 중요도 표시, 필요 없으면 없애도 됨
mail.DeliveryNotificationOptions = DeliveryNotificationOptions.OnFailure;
// 메일 발송 실패시 알려줌

mail.SubjectEncoding = Encoding.UTF8;
// 메일 제목 인코딩은 UTF-8
mail.BodyEncoding = Encoding.UTF8;
// 메일 내용 인코딩은 UTF-8

SmtpClient smtp = new SmtpClient();
// SmtpClient 사용을 위한 smtp 객체 생성
smtp.Host = "smtp.gmail.com";
// smtp 메일 서버 주소 입력
smtp.Port = 587;
// smtp 메일 포트 주소 입력
smtp.Timeout = 10000;
smtp.UseDefaultCredentials = true;
// 서버 기본 인증 이용
smtp.EnableSsl = true;
// smtp SSL 보안 설정
smtp.DeliveryMethod = SmtpDeliveryMethod.Network;
// 이메일을 네트워크를 통해 SMTP 서버로 전송
smtp.Credentials = new System.Net.NetworkCredential("shimpark@gmail.com", "앱비밀번호");
// 사용자 아이디와 비밀번호

try
{
    smtp.Send(mail);
    // smtp 객체를 통해 mail 발송
    mail.Dispose();

    MessageBox.Show("전송완료", "전송 완료");
}
catch (Exception ex)
{
    MessageBox.Show(ex.ToString());
    // 메일 발송 실패시 오류 메시지 출력
}

 

참고 사이트 (https://acredev.tistory.com/16)

 

 

파이썬으로 gmail 발송하기

 

요즘 인기있는 파이썬도 함께 사용해 보는것도 좋습니다.

 

 

1> Python 전자 메일 모듈을 설치

pip install secure-smtplib

 

2> 파이썬 스크립트(예: send_email.py)를 생성하고 이 코드를 복사하여 붙여넣습니다

 

본인의 Gmail 이메일 및 비밀번호, 받는 사람의 이메일 주소를 수정하십시오. 이메일을 보내려면 다음과 같이 파이썬 스크립트를 실행합니다.

import smtplib
from email.mime.text import MIMEText

def send_email(subject, body, from_email, to_email, password):
    msg = MIMEText(body)
    msg["Subject"] = subject
    msg["From"] = from_email
    msg["To"] = to_email

    server = smtplib.SMTP_SSL("smtp.gmail.com", 465)
    server.login(from_email, password)
    server.sendmail(from_email, to_email, msg.as_string())
    server.quit()

if __name__ == "__main__":
    subject = "Email Subject"
    body = "Your message goes here."
    from_email = "your-email@gmail.com"
    to_email = "recipient-email@example.com"
    password = "your-email-password"

    send_email(subject, body, from_email, to_email, password)

 

Gmail 의 STARTTLS 요구사항을 충족시키고 안전하고 효율적으로 이메일을 보낼 수 있습니다.

python send_email.py

댓글

가장 많이 본 글

인천국제공항 제1여객터미널에서 일본으로 가는 출국 절차 안내 ✈️

빅데이터 시대의 도구, LUCY 2.0

Playwright MCP 설정 및 활용 방법