python爬虫得到的乱七八糟的代码似乎有多种类型的编码

2024-09-25 00:24:30 发布

您现在位置:Python中文网/ 问答频道 /正文

我得到了一个位置u'\u0107\x9d\xad\u013a\u02c7\x9e\u013a\xb8\x82',实际上应该是'\xe6\x9d\xad\xe5\xb7\x9e\xe5\xb8\x82'。我怎样才能破译这样的东西?你知道吗


Tags: x82xe5xe6xb8xb7x9dx9exad
1条回答
网友
1楼 · 发布于 2024-09-25 00:24:30

我建议你读python 2.7 unicode。你知道吗

\u0107\x9d\xad\u013a\u02c7\x9e\u013a\xb8\x82不等于\xe6\x9d\xad\xe5\xb7\x9e\xe5\xb8\x82,因此我认为您的爬虫程序代码有问题。你知道吗

在python2.x中,应该小心编码问题。在Python2我们有两种文本类型: str的所有意图和目的都限制为ASCII+7位范围以上的一些未定义数据,unicode相当于python3str类型和从python3继承的一字节bytearray类型。你知道吗

Python2通过允许强制字节字符串和非字节字符串,提供了从非Unicode到Unicode的迁移路径。 你可以签出More About Unicode in Python 2 and 3。你知道吗

你也可以在脚本的开头添加这个,它将系统默认编码设置为utf-8,它对测试程序很有用,可以解决你的问题。你知道吗

import sys
reload(sys)
sys.setdefaultencoding('utf-8')

事实上,我不建议程序员大量使用它程序。它可能引发其他问题。

Python2.x中的编码问题确实令人沮丧,如果您想避免编码问题,您应该开始认真考虑切换到Python3。你知道吗

希望这有帮助。你知道吗

相关问题 更多 >