Python을 사용하여 Gmail을 통해 이메일을 보내는 것은 간단한 작업일 수 있지만 가끔 오류가 발생할 수 있습니다. 이러한 오류 중 하나는 "서버에서 SMTP AUTH 확장을 지원하지 않습니다."입니다. login() 메소드를 사용하여 Gmail 계정에 로그인하려고 할 때 이러한 문제가 발생합니다.
이 문제를 해결하려면 Python 스크립트를 수정해야 합니다. login() 메소드를 호출하려고 시도하는 코드를 다음으로 바꾸십시오.
import smtplib def send_email(user, pwd, recipient, subject, body): FROM = user TO = recipient if isinstance(recipient, list) else [recipient] SUBJECT = subject TEXT = body # Prepare actual message message = """From: %s\nTo: %s\nSubject: %s\n\n%s """ % (FROM, ", ".join(TO), SUBJECT, TEXT) try: server = smtplib.SMTP("smtp.gmail.com", 587) server.ehlo() server.starttls() server.login(user, pwd) server.sendmail(FROM, TO, message) server.close() print('successfully sent the mail') except: print("failed to send mail")
또는 SMTP_SSL 객체를 구현하여 포트 465를 사용하도록 선택할 수 있습니다.
# SMTP_SSL Example server_ssl = smtplib.SMTP_SSL("smtp.gmail.com", 465) server_ssl.ehlo() # optional, called by login() server_ssl.login(gmail_user, gmail_pwd) # ssl server doesn't support or need tls, so don't call server_ssl.starttls() server_ssl.sendmail(FROM, TO, message) #server_ssl.quit() server_ssl.close() print('successfully sent the mail')
위 내용은 Python 및 Gmail로 이메일을 보낼 때 '서버에서 지원되지 않는 SMTP AUTH 확장' 오류를 해결하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!