Подтвердить что ты не робот

Расширение SMTP AUTH не поддерживается сервером

Использование python Я хочу отправить электронное письмо из своего приложения, но оно показывает ошибку

SMTP AUTH extension not supported by server

Код для программы,

import smtplib
from email.MIMEMultipart import MIMEMultipart
from email.MIMEText import MIMEText
fromaddr = "[email protected]"
toaddr = "[email protected]"
msg = MIMEMultipart()
msg['From'] = fromaddr
msg['To'] = toaddr
msg['Subject'] = "Test Mail"
body = "Test mail from python"
msg.attach(MIMEText(body, 'plain'))
server = smtplib.SMTP('smtp.example.com', 25)
server.ehlo()
server.starttls()
server.ehlo()
server.login(fromaddr, "password")
text = msg.as_string()
server.sendmail(fromaddr, toaddr, text)
server.quit()

Выход Telnet:

ehlo test1.example.com
250-hidden
250-HELP
250-SIZE 104857600
250-ENHANCEDSTATUSCODES
250-8BITMIME
250-STARTTLS
250 OK

Мне нужно аутентифицировать и отправлять почту из приложения.

4b9b3361

Ответ 1

требуется подключение до входа в систему и отправки электронной почты.

server = smtplib.SMTP('smtp.example.com', 25)
server.connect("smtp.example.com",465)
server.ehlo()
server.starttls()
server.ehlo()
server.login(fromaddr, "password")
text = msg.as_string()
server.sendmail(fromaddr, toaddr, text)
server.quit()

Ответ 2

import smtplib

    s = smtlib.SMTP('smtplib.gmail.com',587)
    s.ehlo()
    s.starttls()
    s.login('frmaddr','password')
    try:
        s.sendmail('fromaddr','toaddr','message')
    except:
        print (failed)

Ответ 3

Вероятно, это просто сервер, который я использовал, но он получал ту же ошибку, что и OP, даже после реализации принятого решения. Оказалось, серверу не нужен логин, поэтому после удаления строки server.login(fromaddr, "password") ошибка ушла и все server.login(fromaddr, "password").