[Email-SIG] Question about Multi-part message

Mark Sapiro mark at msapiro.net
Thu Jul 8 02:33:25 CEST 2010


On 7/7/2010 1:53 PM, Joe Hughes wrote:
> All,
> 
> As you can see below I'm a bit baffled.  I got the code working by
> commenting three lines, but I would like to have to, from, and date in
> the header.  Any suggestions on how to make this work?
> 
[...]
> except:
>     mail_from = USERNAME
>     mail_to = ['user1 at company.com',
>                'user2 at company.com']


This is cause the problem.

[...]
>     try:
>         message = "No response from " + MAIL_SERVER + " Possibly down."
>         msg = MIMEMultipart()
> #        msg['from'] = mail_from
> #        msg['to'] = mail_to
> #        msg['date'] = email.utils.formatdate(localtime=True)


You are setting msg['To'] to a list. It needs to be a string, e.g.

        if isinstance(mail_to, list):
            msg['To'] = ', '.join(mail_to)
        else:
            msg['To'] = mail_to


Also, when you set headers, they will be capitalized or not as you set
them so set msg['From'], msg['To'], msg['Date'] and msg['Subject'].

-- 
Mark Sapiro <mark at msapiro.net>        The highway is for gamblers,
San Francisco Bay Area, California    better use your sense - B. Dylan



More information about the Email-SIG mailing list