5
Pythonie Chcę wysłać wiadomość e-mail z mojej aplikacji, ale to pokazuje błądSMTP AUTH rozszerzenie nie jest obsługiwana przez serwer
SMTP AUTH extension not supported by server
kodu programu,
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 wyjściowa:
ehlo test1.example.com
250-hidden
250-HELP
250-SIZE 104857600
250-ENHANCEDSTATUSCODES
250-8BITMIME
250-STARTTLS
250 OK
Potrzebuję uwierzytelnić i wysłać pocztę z aplikacji.
Po nawiązaniu połączenia 'server.connect' działało dobrze. Dzięki! – KKD
Dobrze byłoby wyjaśnić, co tu jest 465! –
Port 465 jest przeznaczony dla SMTPS. Jeśli nie udostępniasz żadnego portu, domyślnie jest ustawiony na 25. Szyfrowanie SSL jest uruchamiane automatycznie przed każdą komunikacją na poziomie SMTP podczas korzystania z SMTPS. – Kris