<p>您的数据可能已损坏,至少在一个地方(可能更多)。你知道吗</p>
<p><strong>找到这样一个位置的一种方法是运行代码,而不是在整个文件上,
但是在它的大块上。你知道吗</p>
<p>例如,在以下对象上运行代码:</p>
<ul>
<li>你档案的前半部分</li>
<li>下半场。你知道吗</li>
</ul>
<p>如果任何部件运行正常,则没有错误。你知道吗</p>
<p>下一步是对每个“失败”块重复上述过程。你知道吗</p>
<p><strong>另一种方法:仔细查看StackTrace,可能在某个地方
源文件中的行号(不要与行号混淆)
Python代码)。你知道吗</p>
<p>现在,您将整个文本组合成一行,因此即使StackTrace
包含这样的数字,很可能只有<em>1</em>。你知道吗</p>
<p>为了简化您的调查,请以这样一种方式更改您的代码
源行位于连接文本的<strong>单独的</strong>行中。比如:</p>
<pre><code>data_json_str = "[" + ',\n'.join(data) + "]"
</code></pre>
<p>然后再次执行代码并读取显示的数字(错误发生的位置),
现在等于源行数。你知道吗</p>
<p>然后看这一行,纠正它,你的代码应该运行没有错误。你知道吗</p>
<h2>使用源数据在注释后编辑</h2>
<p>在你的数据中我注意到:</p>
<ul>
<li>它包含两个JSON对象(行)</li>
<li>但是它们之间没有逗号。你知道吗</li>
</ul>
<p>我做了以下补充和修改:</p>
<ul>
<li>在开头/结尾添加<em>[</em>和<em>]</em></li>
<li>在第一个<em>{…}</em>后面加了一个逗号。你知道吗</li>
</ul>
<p>所以输入字符串是:</p>
<pre><code>data_json_str = '''[
{"id": "99014576299056245", "created_at": "2017-11-16T14:28:53.919Z",
"sensitive": false, "spoiler_text": "", "language": "en",
"uri": "mastodon.gamedev.place/users/jaggy/statuses/99014576299056245",
"instance": "mastodon.gamedev.place",
"content": "<p>Coding a cheeky skill before bed. Not as much as I&apos;d like but had drinks with co-workers after work so shrug ^_^</p>",
"account_id": "434", "tag_list": [], "media_attachments": [], "emojis": [], "mentions": []},
{"id": "99014544879467317", "created_at": "2017-11-16T14:20:54.462Z", "sensitive": false}
]'''
</code></pre>
<p>然后执行指令读取此字符串:</p>
<pre><code>data_df = pd.read_json(data_json_str)
</code></pre>
<p>得到了一个有2行的数据帧(没有错误)。
起初我怀疑<code>&apos;</code>可能是错误的来源,但是<em>读取json</em>
我也处理过这个案子。你知道吗</p>
<p>但是当我删除第一个<em>{…}</em>后面的逗号时,我得到了一个错误:</p>
<pre><code>ValueError: Unexpected character found when decoding array value (2)
</code></pre>
<p>(你的错误除外)。你知道吗</p>
<p>我使用<em>Python</em>3.7.0和<em>Pandas</em>0.25。
如果您有<em>Python</em>或<em>Pandas</em>的旧版本,也许您应该
升级它们?你知道吗</p>
<p>真正的问题可能与JSON中的一些“弱点”有关
解析器(我不确定它是Python的一部分还是Pandas的一部分)。你知道吗</p>
<p>在升级之前,执行另一个测试:从
输入字符串并尝试再次读取json。你知道吗</p>
<p>如果你这次得到一个适当的结果,这将证实我的怀疑
您安装的JSON解析器有缺陷,将成为
重要的支持我的建议升级你的软件。你知道吗</p>