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
댓글
댓글 쓰기