Sample code for 30+ languages & platforms
Chilkat2-Python

Send HTML Email with Image Downloaded from URL

Demonstrates how to compose an HTML email with an embedded image where the image data is downloaded from a URL.

Chilkat Chilkat2-Python Downloads

Chilkat2-Python
import sys
import chilkat2

success = False

# This example requires the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.

# First download the image we'll be adding to the HTML "img" tag.
bdJpg = chilkat2.BinData()
http = chilkat2.Http()
success = http.QuickGetBd("https://www.chilkatsoft.com/images/starfish.jpg",bdJpg)
if (success == False):
    print(http.LastErrorText)
    sys.exit()

mailman = chilkat2.MailMan()

# Use your SMTP server..
mailman.SmtpHost = "smtp.yourserver.com"
mailman.SmtpPort = 587
mailman.StartTLS = True

# Set the SMTP login/password
mailman.SmtpUsername = "my_login"
mailman.SmtpPassword = "my_password"

# Create an HTML email.
email = chilkat2.Email()
email.Subject = "HTML Email with Image"
email.From = "Dave <somebody@mydomain.com>"
email.AddTo("Chilkat","info@chilkatsoft.com")

html = "<html><body><p>This is an HTML email with an embedded image.</p><p><img src=\"starfish.jpg\" /></p></body></html>"
email.SetHtmlBody(html)

# Note: The "starfish.jpg" here must match the name in the "img" tag's "src" attribute in the HTML above.
success = email.AddRelatedBd2(bdJpg,"starfish.jpg")
if (success == False):
    print(email.LastErrorText)
    sys.exit()

email.SaveEml("qa_output/out.eml")

# success = mailman.SendEmail(email);
# if (success == ckfalse) {
#     println mailman.LastErrorText;
#     return;
# }
# 
# ignore = mailman.CloseSmtpConnection();

print("Success.")