encoding name mappings in codecs.py with email/charset.py

gst g.starck at gmail.com
Sun Dec 14 12:21:47 EST 2014


Le vendredi 12 décembre 2014 04:21:14 UTC-5, Stefanos Karasavvidis a écrit :
> I've hit a wall with mailman which seems to be caused by pyhon's character encoding names.
> 
> I've narrowed the problem down to the email/charset.py file. Basically the following happens:
> 

Hi, 

it's all in the email.charset.ALIASES dict.

you could also simply patch the __str__ method of Charset :

Python 2.7.6 (default, Mar 22 2014, 22:59:56) 
[GCC 4.8.2] on linux2
Type "copyright", "credits" or "license()" for more information.
>>> 
>>> import email.charset
>>> 
>>> c = email.charset.Charset('iso-8859-7')
>>> str(c)
'iso8859-7'
>>> 
>>> old = email.charset.Charset.__str__
>>> 
>>> def patched(self):
	r = old(self)
	if r.startswith('iso'):
		return 'iso-' + r[3:]
	return r

>>> 
>>> email.charset.Charset.__str__ = patched
>>> 
>>> str(c)
'iso-8859-7'
>>> 


regards,

gst.



More information about the Python-list mailing list