Why can I use the json_normalize function in a list written directly in the script but I can't do it with the same data as an opened file?
Json sample:
resp = {"pagina": 1, "total_de_paginas": 3, "registros": 500, "total_de_registros": 1052, "produto_servico_cadastro":
[{"aliquota_cofins":0,
"aliquota_ibpt":0,
"aliquota_icms":0,
"aliquota_pis":0,
"altura":5,
"bloqueado":"N",
"bloquear_exclusao":"N",
"cest":"",
"cfop":"",
"codInt_familia":"",
"codigo":"10",
"codigo_beneficio":"",
"codigo_familia":3250197559,
"codigo_produto":3250200206,
"codigo_produto_integracao":"8531613751",
"componentes_kit":[
{
"codigo_componente":3323761053,
"codigo_produto_componente":3250202406,
"local_estoque_componente":3244295942,
"quantidade_componente":1,
"valor_unitario_componente":13.1
},
{
"codigo_componente":3253472053,
"codigo_produto_componente":3250202411,
"local_estoque_componente":3244295942,
"quantidade_componente":1,
"valor_unitario_componente":13.1
}]}]}
script 1:
df_= resp['produto_servico_cadastro']
df_1 = pd.json_normalize(df_, record_path = ['componentes_kit'])
script 2:
In this example, I copied the contents of the resp variable and created a json file
f = open('/content/data.json')
dft = json.load(f)['produto_servico_cadastro']
dft_1 = pd.json_normalize(dft, record_path=['componentes_kit'])
results in
KeyError: 'componentes_kit'