2014-06-06 13 views
5

Sto provando a inviare una e-mail tramite il server office365. L'email è correttamente consegnato, ma il messaggio non è collegatopython: smtp con TLS non consegna alcun messaggio

assistenza è più apprezzato

import smtplib 

to = "[email protected]" 
office365_user = '[email protected]' 
office365_pwd = 'password' 

smtpserver = smtplib.SMTP("smtp.office365.com",587) 
smtpserver.ehlo() 
smtpserver.starttls() 
smtpserver.ehlo() 
smtpserver.login(office365_user,office365_pwd) 
msg = "This is a test email \n" 
smtpserver.sendmail(office365_user, to, msg) 
smtpserver.close() 

risposta

4

Il messaggio non è un messaggio di posta elettronica valido, che consiste in un colpo di testa e un corpo. Provare qualcosa di simile:

msg = """From: <[email protected]> 
To: <[email protected]> 
Subject: foo 

This is a test email 
""" 
1

consideri la costruzione del messaggio nello stesso modo come il Python documentation.

from email.mime.text import MIMEText 

msg = MIMEText("This is a test email") 
msg['Subject'] = 'Email Subject' 
msg['From'] = '[email protected]' 
msg['To'] = '[email protected]' 

Inoltre, non sono sicuro su come utilizzare smtpserver.close(). Sembra che il modo corretto sia smtpserver.quit().

Problemi correlati