python - 从源代码构建的 Python 找不到 UTF-32-BE 编码
问题描述
我正在开发定制的linux。当我使用requests做一些 HTTP 发布时,出现了一个导入异常,在idna中。再说一句,我的系统是little-endian linux。
>>> from uts46data import uts46data
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
LookupError: unknown encoding: utf-32-be
>>>
我检查了编码如下。
>>> import sys
>>> sys.getdefaultencoding()
'utf-8'
>>> sys.getfilesystemencoding()
'ANSI_X3.4-1968'
我想这是一个编码问题,那我该怎么办?
更多信息如下。
/ # python -c "import sys;print(sys.version)"
2.7.8 (default, Jul 7 2020, 07:25:41)
[GCC 7.3.1 20180425]
/ # python -c "import codecs;print codecs.lookup('utf-32-be')"
Traceback (most recent call last):
File "<string>", line 1, in <module>
LookupError: unknown encoding: utf-32-be
/ #
解决方案
来回答我自己。
Python 将从 encodings 目录定位它的编码文件。您可以从 Python 源包中复制相应的编码文件,位于 Lib/encodings 目录下。
推荐阅读
- javascript - 如何获取作为标头添加的值以响应从服务器到客户端(在 reactjs 中)?
- oracle-apex - 如何获取项目“数据库列”名称
- reactjs - react-router v3 根路由渲染 2 个组件。如何使用 react-router v5 做到这一点?
- sql - 默认函数中的参数
- shell - shell - 如何匹配xml标签之间的内容?
- java - 如何存储来自测试容器的容器日志?
- sql - 单独执行时起作用的 Oracle SQL 命令在一起执行时不起作用。为什么?
- cursor - 如何在ckeditor5中的特定偏移量上设置光标位置
- java - 使用 2 个线程打印偶数和奇数
- eclipse - Web 应用程序 UI 看起来像 Eclipse UI