擅长:python、mysql、java
<p>检查响应数据体、是否存在实际数据以及数据转储的格式是否正确。</p>
<p>在大多数情况下,您的<code>json.loads</code>-<code>JSONDecodeError: Expecting value: line 1 column 1 (char 0)</code>错误是由于:</p>
<ul>
<li>不符合JSON的引用</li>
<li>XML/HTML输出(即以<;开头的字符串),或</li>
<li>不兼容字符编码</li>
</ul>
<p>最终错误告诉您,在第一个位置,字符串已经不符合JSON。</p>
<p>因此,如果解析失败,尽管第一眼看到的数据体与JSON类似,但尝试替换数据体的引号:</p>
<pre><code>import sys, json
struct = {}
try:
try: #try parsing to dict
dataform = str(response_json).strip("'<>() ").replace('\'', '\"')
struct = json.loads(dataform)
except:
print repr(resonse_json)
print sys.exc_info()
</code></pre>
<p>注意:数据中的引号必须正确转义</p>