O MS Excel é um programa rico em recursos que permite manter e organizar dados em forma de tabela. Além disso, permite armazenar os dados em várias planilhas. Além da organização dos dados, você pode realizar ordenação, plotagem de gráficos, cálculos matemáticos e etc. JSON, por outro lado, é um formato amplamente utilizado para armazenar e transmitir os dados na forma de chave-valor pares. Em certos casos, pode ser necessário importar dados de arquivos JSON para planilhas do Excel programaticamente. De acordo com isso, este artigo aborda como converter dados JSON para Excel XLSX/XLS usando Python.
- API Python para conversão de JSON para Excel
- Importar dados de JSON para planilha do Excel
- Aplicar formatação de célula em conversão JSON para Excel
API Python para conversão de JSON para Excel
Para realizar a conversão de JSON para Excel, usaremos Aspose.Cells for Python via Java. É uma API de manipulação de planilhas que permite criar, modificar ou converter arquivos do Excel usando Python. Você pode baixar a API ou instalá-la usando o seguinte comando pip.
pip install aspose-cells
Importar dados de JSON para Excel em Python
A seguir estão as etapas para importar dados de JSON para Excel em Python:
- Crie um novo objeto Pasta de trabalho.
- Obtenha a referência da planilha desejada usando o método Workbook.getWorksheets().get(index).
- Crie um objeto da classe JsonLayoutOptions para definir opções adicionais.
- Importe dados de JSON para Excel usando o método JsonUtility.importData().
- Salve o arquivo Excel usando o método Workbook.save(string, SaveFormat).
O exemplo de código a seguir mostra como importar dados de JSON para Excel.
jsonInput = '[{"nodeId":1,"reputation":1134},{"nodeId":2,"reputation":547},{"nodeId":3,"reputation":1703},{"nodeId":4,"reputation":-199},{"nodeId":5,"reputation":-306},{"nodeId":6,"reputation":-49},{"nodeId":7,"reputation":1527},{"nodeId":8,"reputation":1223}]'
# create a blank Workbook object
workbook = Workbook()
# access default empty worksheet
worksheet = workbook.getWorksheets().get(0)
# set JsonLayoutOptions for formatting
layoutOptions = JsonLayoutOptions()
layoutOptions.setArrayAsTable(True)
# import JSON data to default worksheet starting at cell A1
JsonUtility.importData(jsonInput, worksheet.getCells(), 0, 0, layoutOptions)
# save resultant file in JSON-TO-XLS format
workbook.save("output.xls", SaveFormat.AUTO)
Inserir dados JSON
[{"nodeId":1,"reputation":1134},{"nodeId":2,"reputation":547},{"nodeId":3,"reputation":1703},{"nodeId":4,"reputation":-199},{"nodeId":5,"reputation":-306},{"nodeId":6,"reputation":-49},{"nodeId":7,"reputation":1527},{"nodeId":8,"reputation":1223}]'
Saída da planilha do Excel
Importar JSON para Excel com Estilos de Formatação
Aspose.Cells também permite que você aplique estilos na conversão de JSON para Excel. Por exemplo, você pode definir fonte, cor, alinhamento, estilos de borda, etc. A seguir estão as etapas para aplicar estilos ao importar dados de JSON para Excel.
- Crie um novo objeto Pasta de trabalho.
- Obtenha a referência da planilha desejada usando o método Workbook.getWorksheets().get(index).
- Crie um objeto da classe CellsFactory e recupere a referência de Style usando o método CellsFactory.createStyle().
- Defina as opções de estilo desejadas.
- Crie um objeto da classe JsonLayoutOptions para definir opções adicionais.
- Importe dados de JSON para Excel usando o método JsonUtility.importData().
- Salve o arquivo Excel usando o método Workbook.save(string, SaveFormat).
O exemplo de código a seguir aplica estilos diferentes ao importar dados de JSON para Excel em Python.
jsonInput = '[{"nodeId":1,"reputation":1134},{"nodeId":2,"reputation":547},{"nodeId":3,"reputation":1703},{"nodeId":4,"reputation":-199},{"nodeId":5,"reputation":-306},{"nodeId":6,"reputation":-49},{"nodeId":7,"reputation":1527},{"nodeId":8,"reputation":1223}]'
# create a blank Workbook object
workbook = Workbook()
# access default empty worksheet
worksheet = workbook.getWorksheets().get(0)
# set Styles
factory = CellsFactory()
style = factory.createStyle()
style.getFont().setBold(True)
style.getFont().setColor(Color.getBlueViolet())
# set JsonLayoutOptions for formatting
layoutOptions = JsonLayoutOptions()
layoutOptions.setArrayAsTable(True)
layoutOptions.setTitleStyle(style)
# import JSON data to default worksheet starting at cell A1
JsonUtility.importData(jsonInput, worksheet.getCells(), 0, 0, layoutOptions)
# save resultant file in JSON-TO-XLS format
workbook.save("output.xlsx", SaveFormat.AUTO);
Saída da planilha do Excel
Obtenha uma licença gratuita
Você pode usar o Aspose.Cells para Python via Java sem limitações de avaliação usando uma licença temporária.
Conclusão
Os arquivos JSON e Excel são amplamente usados para armazenar e compartilhar os dados. Assim, neste artigo, você aprendeu como importar dados de JSON para Excel XLSX/XLS usando Python. Além disso, você viu como aplicar formatação na conversão de JSON para Excel. Você também pode explorar outros recursos do Aspose.Cells for Python via Java usando a documentação. Caso você tenha alguma dúvida, você pode postar em nosso fórum.