[Baypiggies] Handling unwanted Unicode \u2019 characters in XML
carroll at tjc.com
Wed Jul 2 02:30:38 CEST 2008
Sorry, meant to send this to the list....
On Tue, 1 Jul 2008, Stephen McInerney wrote:
> Check that URL again: string.translate() IS deprecated, but
> string.maketrans() is not. unicode.translate() is not deprecated.
But can you set up the translate table, though?
>>> import string
>>> trantab = string.maketrans(u"u\2019", u"'")
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
UnicodeEncodeError: 'ascii' codec can't encode character u'\x81' in
position 1: ordinal not in range(128)
I also note that the docs for the translate() string method suggest:
Note, a more flexible approach is to create a custom character mapping
codec using the codecs module (see encodings.cp1251 for an example).
But reading the codecs docs raised more questions for me than they
answered; it certainly isn't as straightforward as the ascii translation
More information about the Baypiggies