Sto facendo delle prove ad inviare mail con python 3.5.3,
se invio da un account di virgilio, tutto funziona correttamente,
se invio da un account di aruba, non si riesce a inviare.
mi restituisce il messaggio:
Traceback (most recent call last):
File "send_mail1.py", line 55, in <module>
mail(recipients, "Todays report", "Test email", filenames)
File "send_mail1.py", line 41, in mail
mailServer = smtplib.SMTP("smtps.aruba.it", 465)
File "/usr/lib/python3.5/smtplib.py", line 251, in __init__
(code, msg) = self.connect(host, port)
File "/usr/lib/python3.5/smtplib.py", line 337, in connect
(code, msg) = self.getreply()
File "/usr/lib/python3.5/smtplib.py", line 393, in getreply
raise SMTPServerDisconnected("Connection unexpectedly closed")
smtplib.SMTPServerDisconnected: Connection unexpectedly closed
se uso:
mailServer = smtplib.SMTP_SSL("smtps.aruba.it", 465)
"STARTTLS extension not supported by server.")
grazie.
ciao
Beppe
8<-------------------8<-------------------8<-------------------8<-------------------8<-------------------
import os
import smtplib
import email
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
from email.mime.image import MIMEImage
from email.mime.base import MIMEBase
from email import encoders
files = "./tmp"
filenames = [os.path.join(files, f) for f in os.listdir(files)]
#print (filenames)
user = "[email protected]"
pwd = "password"
recipients = ['[email protected]','[email protected]']
def mail(to, subject, text, attach):
msg = MIMEMultipart()
msg['From'] = user
msg['To'] = ", ".join(recipients)
msg['Subject'] = subject
msg.attach(MIMEText(text))
for file in filenames:
part = MIMEBase('application', 'octet-stream')
part.set_payload(open(file, 'rb').read())
encoders.encode_base64(part)
part.add_header('Content-Disposition', 'attachment;
filename="%s"' % file)
msg.attach(part)
mailServer = smtplib.SMTP("smtps.aruba.it", 465)
mailServer.set_debuglevel(1)
mailServer.ehlo()
mailServer.starttls()
mailServer.ehlo()
mailServer.login(user, pwd)
mailServer.sendmail(user, to, msg.as_string())
mailServer.close()
#send it
mail(recipients, "Todays report", "Test email", filenames)
--
Beppe