首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >带空格的Python解析器问题

带空格的Python解析器问题
EN

Stack Overflow用户
提问于 2020-05-04 06:51:37
回答 2查看 133关注 0票数 0

我正在处理从API中获得的一些JSON数据。但是,当我试图使用python解析器解析它时,带有空格的引号中的结果值会被错误地解析。

例如:

从api的response.text中,我得到以下部分:“value”:“4685”,解析后它变成'value':'4\xa0685‘

我知道我可以手动删除\xa0并得到结果,但这似乎是一个奇怪的解决方案。

守则:

代码语言:javascript
运行
AI代码解释
复制
response = requests.get(url)
data = json.loads(response.text)

有人知道这是怎么回事吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-05-04 13:34:31

在我看来,这似乎是编码的一个问题。

来自请求模块文档

当您发出请求时,请求会根据headers对响应的编码进行合理的猜测。访问r.text时使用请求猜测的文本编码。您可以使用r.encoding属性了解正在使用的编码请求,并对其进行更改。

您能检查标题以检查设置了哪些字符集并使用encode()转换为正确的编码吗?

或者,在转换为JSON之前,可以将响应的编码更改为'utf-8‘。

代码语言:javascript
运行
AI代码解释
复制
response = requests.get(url)
response.encoding = 'utf-8'
data = json.loads(response.text)

参考资料:https://requests.readthedocs.io/en/master/user/quickstart/#response-content

票数 0
EN

Stack Overflow用户

发布于 2020-05-04 06:58:47

4 685不是一个正确格式化的数字,解析器不能将它读取为整数。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61595098

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档