The code below show the key parts of embedding an image.
# require the new email package from email.MIMEMultipart import MIMEMultipart from email.MIMEText import MIMEText from email.MIMEImage import MIMEImage ... ... msgRoot = MIMEMultipart('related') ... ... # Assumes the image is in current directory fp = open('test.jpg', 'rb') msgImage = MIMEImage(fp.read()) fp.close() # Define the image's ID as referenced above msgImage.add_header('Content-ID', '<image1>') msgRoot.attach(msgImage) ... smtp.sendmail(strFrom, strTo, msgRoot.as_string()) ...