Chris Withers wrote:
> print msg.as_string()
> 
> MIME-Version: 1.0
> Content-Type: text/plain; charset; charset="utf-8"
                             ^^^^^^^
Actually, even this isn't correct as you can see above...

> charset = Charset('utf-8')
> msg = MIMEText('','plain',None)
> msg.set_payload(u'Some text with chars that need encoding:\xa3',charset)
> 
> Traceback (most recent call last):
>   File "C:\test_encoding.py", line 5, in ?
>     msg.set_payload(u'Some text with chars that need 
> encoding:\xa3',charset)
>   File "c:\python24\lib\email\Message.py", line 218, in set_payload
>     self.set_charset(charset)
>   File "c:\python24\lib\email\Message.py", line 260, in set_charset
>     self._payload = charset.body_encode(self._payload)
>   File "c:\python24\lib\email\Charset.py", line 366, in body_encode
>     return email.base64MIME.body_encode(s)
>   File "c:\python24\lib\email\base64MIME.py", line 136, in encode
>     enc = b2a_base64(s[i:i + max_unencoded])
> UnicodeEncodeError: 'ascii' codec can't encode character u'\xa3' in 
> position 40: ordinal not in range(128)

...and I'm still left with this problem...

Has no-one ever successfully generated a correctly formatted email with 
email.MIMEText where the message includes non-ascii characters?!

Chris

-- 
Simplistix - Content Management, Zope & Python Consulting
            - http://www.simplistix.co.uk
-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to