【问题标题】:Python Pandas Not Recognizing JSON FilePython Pandas 无法识别 JSON 文件
【发布时间】:2014-09-15 11:44:04
【问题描述】:

我正在尝试在 Pandas 中加载 JSON 数据以进行一些分析。

这是我正在分析的数据示例。

http://data.ncaa.com/jsonp/game/football/fbs/2013/08/31/wyoming-nebraska/field.json

我尝试了以下方法:

import json
import pandas as pd
from pandas import DataFrame

json_data = pd.read_json('jsonv3.json')

还有

import json
import pandas
from pprint import pprint

json_data=open('jsonv3.json')

data = json.load(json_data)
pprint(data)

json_data.close()

产生的错误如下:

1) ValueError: 预期的对象或值

2) ValueError: 无法解码 JSON 对象

我真的不知道为什么无法识别 JSON 文件。

我已在 http://jsonformatter.curiousconcept.com/ 上确认它是有效的 JSON。我真的不知道如何调试这个问题。我什么都没找到。错误可能是因为 JSON 间距格式吗?

【问题讨论】:

    标签: python json pandas jsonp


    【解决方案1】:

    这不是 JSON,它是 JSONP。请注意,JSON“内容”包含在“函数调用”callbackWrapper(...) 中。来自维基百科文章:“对 JSONP 请求的响应不是 JSON,也不会被解析为 JSON”。

    如果您已将 JSONP 响应保存在文件 jsonv3.json 中,则可以剥离函数调用包装器并使用以下内容处理内容:

    import json
    
    with open('jsonv3.json', 'r') as f:
        response = f.read()
    
    start = response.find('(')
    end = response.rfind(')')
    json_content = response[start+1:end]
    data = json.loads(json_content)
    

    【讨论】:

      猜你喜欢
      • 2018-08-20
      • 2020-05-16
      • 2021-12-10
      • 2012-07-26
      • 1970-01-01
      • 2018-06-25
      • 1970-01-01
      • 1970-01-01
      • 2018-02-10
      相关资源
      最近更新 更多