Processar JSON aninhado manualmente é uma tarefa tediosa e propensa a erros. Com um script Python, você automatiza a extração de dados complexos e exporta diretamente para uma planilha, economizando tempo e garantindo precisão.
pip install pandas openpyxl)Comece importando as bibliotecas que vão manipular o JSON e criar a planilha Excel.
import json
import pandas as pd
Use a função json.load() para ler o arquivo e convertê-lo em um dicionário Python.
with open('dados.json', 'r', encoding='utf-8') as arquivo:
dados = json.load(arquivo)
A função pd.json_normalize() transforma estruturas aninhadas em um DataFrame tabular, facilitando a exportação.
df = pd.json_normalize(
dados,
record_path=['usuarios'], # caminho para lista principal
meta=[ # campos de nível superior
'empresa',
['contato', 'nome'],
['contato', 'email']
]
)
Use to_excel() para salvar os dados em uma planilha, ajustando parâmetros como nome da planilha e formatação.
df.to_excel('saida.xlsx', index=False, sheet_name='Dados Usuários')
Entrada JSON:
{
"empresa": "Tech Solutions",
"contato": {
"nome": "Ana Silva",
"email": "ana@tech.com"
},
"usuarios": [
{
"id": 1,
"nome": "João",
"email": "joao@email.com",
"perfil": {
"tipo": "admin",
"ativo": true
}
},
{
"id": 2,
"nome": "Maria",
"email": "maria@email.com",
"perfil": {
"tipo": "user",
"ativo": false
}
}
]
}
Tabela Excel gerada:
| empresa | contato.nome | contato.email | id | nome | perfil.tipo | perfil.ativo | |
|---|---|---|---|---|---|---|---|
| Tech Solutions | Ana Silva | ana@tech.com | 1 | João | joao@email.com | admin | True |
| Tech Solutions | Ana Silva | ana@tech.com | 2 | Maria | maria@email.com | user | False |
Com este script, você transforma dados JSON complexos em uma planilha organizada em poucos passos, eliminando processos manuais e reduzindo a chance de erros.