Pomocí smtplib umím poslat e-mail, ale problém mám s tím, jak k tomu připojit přílohu (konkrétně potřebuju pdf). Z nápověd co jsem našel přes Google jsem to nějak nepochopil a tak prosím o radu.
Fórum › Python
E-mail s přílohou
Tak jsem to nakonec našel a funguje to
import smtplib
import mimetypes
from email.Encoders import encode_base64
from email.MIMEAudio import MIMEAudio
from email.MIMEBase import MIMEBase
from email.MIMEImage import MIMEImage
from email.MIMEMultipart import MIMEMultipart
from email.MIMEText import MIMEText
def getAttachment(path, filename):
ctype, encoding = mimetypes.guess_type(path)
if ctype is None or encoding is not None:
ctype = 'application/octet-stream'
maintype, subtype = ctype.split('/', 1)
fp = open(path, 'rb')
if maintype == 'text':
attach = MIMEText(fp.read(),_subtype=subtype)
elif maintype == 'message':
attach = email.message_from_file(fp)
elif maintype == 'image':
attach = MIMEImage(fp.read(),_subtype=subtype)
elif maintype == 'audio':
attach = MIMEAudio(fp.read(),_subtype=subtype)
else:
print maintype, subtype
attach = MIMEBase(maintype, subtype)
attach.set_payload(fp.read())
encode_base64(attach)
fp.close
attach.add_header('Content-Disposition', 'attachment', filename=filename)
return attach
msg = MIMEMultipart()
msg['From'] = 'odesilatel'
msg['To'] = 'adresat'
msg['Subject'] = 'here is your attachment'
path = 'C:a.pdf'
filename = 'a.pdf'
attach = getAttachment(path, filename)
msg.attach(attach)
server = smtplib.SMTP('smtp.server.cz')
server.sendmail('adesilatel', 'adresat', msg.as_string())
server.quit()
Zjistit počet nových příspěvků
Přidej příspěvek
Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku
×Vložení zdrojáku
×Vložení obrázku
×Vložení videa
Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
Uživatelé prohlížející si toto vlákno
Uživatelé on-line: 0 registrovaných, 18 hostů
Podobná vlákna
E-mail s přílohou — založil Al
Mail v php s prilohou — založil Roman
[E-mail] - odeslání s přílohou — založil Gibon
Moderátoři diskuze