[python] email 8bit encoding

rurpy at yahoo.com rurpy at yahoo.com
Mon Jul 29 23:56:33 EDT 2013


On 07/29/2013 12:16 AM, W. Trevor King wrote:
> On Sun, Jul 28, 2013 at 04:41:27PM -0700, rurpy at yahoo.com wrote:
>> How, using Python-3.3's email module, do I "flatten" (I think
>> that's the right term) a Message object to get utf-8 encoded
>> body with the headers:
>>  Content-Type: text/plain; charset=UTF-8
>>  Content-Transfer-Encoding: 8bit
>> when the message payload was set to a python (unicode) string?
> 
> I asked about this a while back [1], but never got a response.  My
> current best-guess is here [2].  My fallback flattening works for
> everything except the 8-bit encoded messages using the UTF-16 charset,
> but it's pretty ugly.
> 
> Let me know if you figure out something cleaner :).
> 
> Cheers,
> Trevor
> 
> [1]: http://thread.gmane.org/gmane.comp.python.general/725425
> [2]: https://github.com/wking/rss2email/blob/master/rss2email/email.py#L226

Thanks, that was very helpful.

My code is just a quick utility tool for internal use so
I am able to be fairly hackish without shame. :-)

Since I am synthesizing the mails from scratch and the 
encoding requirements fairly simple, I could probably
dispense with the email/smtplib packages altogether and 
just pipe my text directly to sendmail.  But I thought
using Python's email package would be easier.  Silly me.

Thanks again.



More information about the Python-list mailing list