【发布时间】:2020-10-06 16:37:27
【问题描述】:
我目前正在做一些事情,我需要从网站上提取一些 .xml 并使用它。
一切正常,但如果我尝试打印.xml(或解析后的文本)并且.xml 中有一些无法编码的字符,我会收到该错误:
return codecs.charmap_encode(input,self.errors,encoding_table)
[0]UnicodeEncodeError: 'charmap' codec can't encode character '\u2665' in position 1161: character maps to <undefined>
现在我想找到这些字符并将它们替换为“?”例如。
我该怎么做?
有没有更好的方法来处理这些错误?
【问题讨论】:
-
这是完整的错误堆栈吗?你是直接用自己的代码调用
codecs.charmap_encode吗? -
您是否正在使用 Python 2?这是 Python 3 带来显着缓解的领域之一。
-
更好的方法是配置您的 Python,以便它可以输出完整的 Unicode 范围。我知道这在 Windows 上更具挑战性,但这是离开 Windows 的另一个原因。
标签: python string unicode decode encode