像JSONDecodeError: Extra data: line 2 column 1 (char 134)这样的问题怎么解决

问题介绍

今天处理返回的 JSON 的时候,出现了下面这样的问题:

处理这种问题的时候,首先你要看一下当前的字符串格式是啥样的,比如我查看后发现是下面这样的:

会发现这个字符串中间没有逗号,也就是此时的JSON格式不对。用字节模式查看发现只有一个换行符:

解决方案

我找到的方法是用 Pandas 包,它有个行模式,这样可以获取这种情况的 JSON 字典(dictionary):

python 复制代码
import pandas as pd
df = pd.read_json(ret.text, lines=True)

我只找到这种方法解决这个问题。JSON 包解决不了这个问题,无论是写成文件再读,或者去替换字符串中的换行符,然后再获取,这样还是不行。我试了很多方法,只有 Pandas 奏效,这是什么原因呢?

目前我并不清楚,如果你熟悉 Python 并且知道原因,或者有一些猜测,都烦请告诉我一下,因为知其然才能进步。

希望能帮到有需要的人~

相关推荐
星空椰5 小时前
Python 面向对象高级:继承与类定义详解
开发语言·python
凯瑟琳.奥古斯特6 小时前
高阶子查询题目精炼
开发语言·数据库·python·职场和发展·数据库开发
风之所往_6 小时前
Python 3.4 新特性全面总结
python
太阳上的雨天6 小时前
任何格式的文件转Markdown
python·ai
yaoxin5211237 小时前
419. 现代 Java IO 最佳实践 - 写入文本文件
java·windows·python
weixin_468466857 小时前
纳米 AI 搜索新手极速上手指南
人工智能·python·深度学习·搜索引擎·ai·语言模型·自然语言处理
凯瑟琳.奥古斯特7 小时前
数据库原理选择题精选
数据库·python·职场和发展
彦为君8 小时前
JavaSE-07-异常机制
java·开发语言·后端·python·spring
适应规律8 小时前
【无标题】
人工智能·python·算法