webentwicklung-frage-antwort-db.com.de

SMTP-AUTH-Erweiterung wird vom Server nicht unterstützt

Mit python Ich möchte eine E-Mail von meiner App senden, aber es wird der Fehler angezeigt

SMTP AUTH extension not supported by server

Code für das Programm,

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-Ausgang:

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

Ich muss mich authentifizieren und E-Mails von der App senden.

21
KKD

vor der Anmeldung und dem Versenden von E-Mails ist eine Verbindung erforderlich.

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()
36
Kris

Es handelt sich wahrscheinlich nur um den Server, den ich verwendet habe, der jedoch auch nach der Implementierung der akzeptierten Lösung den gleichen Fehler wie das OP aufwies. Es stellte sich heraus, dass der Server keine Anmeldung wünschte. Nach dem Löschen der Zeile server.login(fromaddr, "password") verschwand der Fehler und es funktionierte.

0
cardamom
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)
0
Bobzz kenya