在使用Python(Django)ORM从一个未知/旧的/不一致的Mysql数据库中获取数据并将其存储到Postgres utf-8数据库时,有时会出现编码错误的数据。
目标:grégory
> a
u'gr\xe3\xa9gory'
> print a
grã©gory
我尝试了几种解码/编码技巧,但都没有成功:
> print a.encode('utf-8').decode('latin1')
grã©gory
> print a.encode('utf-8').decode('latin1')
grã©gory
> print a.decode('latin-1')
UnicodeEncodeError: 'ascii' codec can't encode characters in position 2-3: ordinal not in range(128)
即使有一些unicode_escape
a
的解码步骤。你展示的代码发生得太晚了。 - Wooble