[smtplib]: How to send binary file attachement ?
Oleg Broytmann
phd at phd.russ.ru
Mon Feb 28 05:31:40 EST 2000
On Mon, 28 Feb 2000, Roger Lam wrote:
> anyone got a working sample code?
#! /usr/local/bin/python -O
import sys, os, string
from mimetools import choose_boundary
from MimeWriter import MimeWriter
import base64
try:
from cStringIO import StringIO
except ImportError:
from StringIO import StringIO
def gen_mime(zip_file):
email_from = "Oleg Broytmann <phd2 at mail.com>"
email_to = "you at your.some.host"
#sendmail = open("sendmail", 'w')
sendmail = os.popen("/usr/sbin/sendmail '%s'" % email_to, 'w')
sendmail.write("""From: %s
To: %s
Subject: %s
Precedence: bulk
MIME-Version: 1.0
""" % (email_from, email_to, zip_file))
mime = MimeWriter(sendmail)
firstpart = mime.startmultipartbody("related")
firstpart.write("""\
Your mailer does not support MIME encoding. Please upgarde to MIME-enabled
mailer (almost every modern mailer is MIME-capable).
""")
subwriter = mime.nextpart()
subwriter.addheader("Content-Transfer-Encoding", "base64")
subwriter.addheader("Content-Disposition", "inline; filename=\"%s\"" % zip_file)
subwriter.startbody("application/zip")
zip_file = open(zip_file, 'r')
base64.encode(StringIO(zip_file.read()), sendmail)
zip_file.close()
mime.lastpart()
sendmail.close()
def run():
zip_file = sys.argv[1]
gen_mime(zip_file)
if __name__ == '__main__':
run()
Oleg.
----
Oleg Broytmann Foundation for Effective Policies phd at phd.russ.ru
Programmers don't die, they just GOSUB without RETURN.
More information about the Python-list
mailing list