[Python] email, allegati e pigrizia
Stefano
e.tino a email.it
Mer 28 Mar 2007 09:14:19 CEST
Sandro Dentella ha scritto:
>
> Se no mi costa meno chiamare 'mutt -a' ;-)
>
Ciao Sandro,
ti riporto qui di seguito un breve listato che uso per inviare delle
mail con allegato, non è molto commentato spero sia comunque comprensibile.
----
import os
import smtplib
from email.MIMEMultipart import MIMEMultipart
from email.MIMEBase import MIMEBase
from email.MIMEText import MIMEText
from email.Utils import COMMASPACE, formatdate
from email import Encoders
def sendMail(mittente, to, subject, text, files=[],server="localhost"):
assert type(to)==list
assert type(files)==list
msg = MIMEMultipart()
msg['From'] = mittente
msg['To'] = COMMASPACE.join(to)
msg['Date'] = formatdate(localtime=True)
msg['Subject'] = subject
#~ se è necessaria la conferma di lettura
msg['Disposition-Notification-To'] = mittente
msg.attach( MIMEText(text) )
for file in files:
part = MIMEBase('application', "octet-stream")
part.set_payload( open(file,"rb").read() )
Encoders.encode_base64(part)
part.add_header('Content-Disposition', 'attachment; filename="%s"'
% os.path.basename(file))
msg.attach(part)
smtp = smtplib.SMTP(server)
smtp.sendmail(fro, to, msg.as_string() )
smtp.close()
if __name__ == '__main__':
smpt_server = 'mail.dominio.it'
mittente = 'Mittente <mittente a dominio.it'
destinatari = ['dest a dominio.it',]
oggetto = "Oggetto"
corpo = "Cordiali Saluti \n\n Mittente"
pathname = os.getcwd()
file_allegato = pathname+"\\"+filename+".pdf"
sendMail(mittente, destinatari, oggetto, corpo, [file_allegato],
smtp_server)
>
> grazie
> *:-)
Prego ;-)
Saluti
Stefano
--
Email.it, the professional e-mail, gratis per te: http://www.email.it/f
Sponsor:
Prestiti e Finanziamenti con un semplice click, scopri subito se sei finanziabile cliccando qui
Clicca qui: http://adv.email.it/cgi-bin/foclick.cgi?mid=2910&d=28-3
Maggiori informazioni sulla lista
Python