【问题标题】:writing json string to xls file using python pandas使用 python pandas 将 json 字符串写入 xls 文件
【发布时间】:2020-08-05 11:24:57
【问题描述】:

我正在尝试将一个 json 字符串解析为 excel 文件。但面临一些错误

import pandas
...
...
response = requests.get(BASE_URL, headers=headers)
#print(response.text)
df_json = json.loads(response.text)
print(df_json) -- this is printing json as string
df = pd.read_json(df_json)
-- now i want to load this into excel
df.to_excel('c:\scripts\DATAFILE.xls', sheet_name='Sheet1', index=False, engine='xlsxwriter')

错误:

ValueError: Invalid file path or buffer object type: <class 'dict'>

有人可以帮忙吗

【问题讨论】:

  • 你能分享一下你的打印结果吗(df_json)
  • 使用response.json() 获取 JSON 而不是文本更正常。这假定 MIME 类型设置正确。分享print(df_json) 的输出,以便为您的实际问题提供帮助
  • 我猜我的 json 输出它自己乱七八糟,无法解析..需要弄清楚
  • 错误很明显,你没有数据框而是字典。请分享minimal reproducible example

标签: python json pandas xls


【解决方案1】:

pd.read_json() 将文件路径或 JSON 字符串作为输入。您应该检查df_json 的类型,因为json.loads() 会反序列化输入。 如果它是一个 dict 你可以简单地做

df = pd.DataFrame(df_json)

如果它是一个列表,那就有点复杂了。

如果变量名不是数据框,我也会避免在变量名“df”前加上前缀。

【讨论】:

    猜你喜欢
    • 2020-10-27
    • 1970-01-01
    • 2015-09-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多