Como Exportar Excel para Markdown em Python
Exportar dados do Excel para Markdown é uma necessidade comum em pipelines de documentação, geradores de README e fluxos de trabalho de sites estáticos. Aspose.Cells FOSS for Python torna isso uma operação de método único via workbook.save_as_markdown(): sem necessidade do Microsoft Office.
Nota: Aspose.Cells FOSS exporta para XLSX, CSV, TSV, Markdown e JSON. A exportação para PDF não faz parte da biblioteca FOSS.
Por que Exportar Excel para Markdown com Aspose.Cells FOSS?
- Sem dependência do Office: Converte totalmente em Python sem COM nativo ou instalação do Office.
- Suporte em memória: Gere strings Markdown sem qualquer I/O de disco usando
MarkdownHandler. - Saída personalizável: Configure o comportamento de exportação via
MarkdownSaveOptions. - Amigável a pipelines: Integre diretamente em geradores de documentação, sites estáticos Hugo ou fluxos de trabalho do GitHub Actions.
Guia passo a passo
Etapa 1: Instale o Aspose.Cells FOSS para Python
Instale a biblioteca do PyPI usando pip:
pip install aspose-cells-fossVerifique a instalação:
from aspose.cells_foss import Workbook
print("Ready.")Etapa 2: Criar uma Pasta de Trabalho e Preencher Dados
from aspose.cells_foss import Workbook, Cell
workbook = Workbook()
ws = workbook.worksheets[0]
##Headers
ws.cells["A1"].value = "Product"
ws.cells["B1"].value = "Q1 Revenue"
ws.cells["C1"].value = "Q2 Revenue"
##Data rows
ws.cells["A2"].value = "Widget A"
ws.cells["B2"].value = 12500
ws.cells["C2"].value = 15000
ws.cells["A3"].value = "Widget B"
ws.cells["B3"].value = 8750
ws.cells["C3"].value = 9200
ws.cells["A4"].value = "Widget C"
ws.cells["B4"].value = 20000
ws.cells["C4"].value = 22500Passo 3: Exportar para Markdown
Chame workbook.save_as_markdown() com um caminho de saída .md:
workbook.save_as_markdown("report.md")
print("Markdown saved successfully.")A saída é uma tabela Markdown padrão:
| Product | Q1 Revenue | Q2 Revenue |
|---|---|---|
| Widget A | 12500 | 15000 |
| Widget B | 8750 | 9200 |
| Widget C | 20000 | 22500 |Etapa 4: Personalizar com MarkdownSaveOptions
MarkdownSaveOptions⟦/PH_0017⟧
from aspose.cells_foss import Workbook, Cell, MarkdownSaveOptions
workbook = Workbook()
ws = workbook.worksheets[0]
ws.cells["A1"].value = "City"
ws.cells["B1"].value = "Population"
ws.cells["A2"].value = "London"
ws.cells["B2"].value = 9000000
ws.cells["A3"].value = "Tokyo"
ws.cells["B3"].value = 13960000
options = MarkdownSaveOptions()
workbook.save_as_markdown("cities.md", options)Passe uma instância MarkdownSaveOptions para save_as_markdown() para configuração.
Etapa 5: Gerar Markdown na Memória (Sem I/O de Arquivo)
Use MarkdownHandler.save_markdown_to_string() para obter o Markdown como uma string Python:
from aspose.cells_foss import Workbook, Cell, MarkdownHandler
workbook = Workbook()
ws = workbook.worksheets[0]
ws.cells["A1"].value = "Key"
ws.cells["B1"].value = "Value"
ws.cells["A2"].value = "version"
ws.cells["B2"].value = "26.3.0"
ws.cells["A3"].value = "license"
ws.cells["B3"].value = "MIT"
md_string = MarkdownHandler.save_markdown_to_string(workbook)
print(md_string)
##Use md_string in an API response, a GitHub README template, etc.Passo 6: Carregar um XLSX existente e exportar para Markdown
from aspose.cells_foss import Workbook
workbook = Workbook("existing_report.xlsx")
workbook.save_as_markdown("existing_report.md")
print("Markdown export complete.")Isso preserva todos os valores das células e a estrutura básica. Nota: A exportação em Markdown lê cell.value apenas — células que contêm apenas uma fórmula sem valor em cache aparecerão em branco na saída. A biblioteca não avalia fórmulas no momento da exportação. Para garantir que os resultados das fórmulas apareçam, abra o arquivo no Excel ou LibreOffice primeiro (que avalia e armazena em cache os resultados das fórmulas), salve como XLSX e, em seguida, reexporte.
Etapa 7: Tratamento de Erros
Envolva as exportações em blocos try/except para uso em produção:
from aspose.cells_foss import Workbook
def export_to_markdown(xlsx_path: str, md_path: str) -> bool:
try:
workbook = Workbook(xlsx_path)
workbook.save_as_markdown(md_path)
return True
except FileNotFoundError:
print(f"Input file not found: {xlsx_path}")
return False
except Exception as e:
print(f"Export failed for {xlsx_path}: {e}")
return FalseProblemas Comuns e Soluções
1. Saída Markdown vazia
Causa: A planilha não tem células preenchidas.
Correção: Confirme que ws.cells["A1"].value está definido e não None antes de chamar save_as_markdown().
2. ModuleNotFoundError: No module named 'aspose.cells_foss'
Cause: O pacote não está instalado ou o nome do pacote usado está errado.
Fix: Execute pip install aspose-cells-foss. A importação é from aspose.cells_foss import ... (sublinhado, não ponto).
3. AttributeError: 'Workbook' object has no attribute 'save_as_markdown'
Causa: Você instalou o pacote errado (aspose-cells-python em vez de aspose-cells-foss).
Correção: pip install aspose-cells-foss e confirme from aspose.cells_foss import Workbook.
4. Problemas de codificação no arquivo de saída
Causa: Escrever a string Markdown em um arquivo sem especificar a codificação UTF-8.
Correção: Use MarkdownHandler.save_markdown_to_string() e escreva explicitamente:
with open("output.md", "w", encoding="utf-8") as f:
f.write(md_string)Perguntas Frequentes
Posso exportar para PDF em vez disso?
Não. A exportação de PDF não está disponível no Aspose.Cells FOSS. Use o pacote comercial aspose-cells-python para saída de PDF.
Quais formatos de entrada posso carregar e depois exportar para Markdown?
Arquivos XLSX e CSV podem ser carregados com Workbook("file.xlsx") e então exportados para Markdown.
Como exportar apenas uma planilha quando há várias planilhas?
Por padrão, save_as_markdown() exporta a primeira planilha. Passe uma instância MarkdownSaveOptions para configuração adicional.
Posso executar isso no Linux ou macOS?
Sim. A biblioteca funciona no Windows, Linux e macOS sem nenhuma configuração específica de plataforma.
Recursos Relacionados:
- Aspose.Cells FOSS for Python: Guia do Desenvolvedor
- Exportação de Formato de Planilha
- Introdução / Instalação
- Referência da API:
MarkdownHandler,MarkdownSaveOptions,Workbook.save_as_markdown() - Base de Conhecimento: Mais guias práticos (gráficos, estilos, carregamento)
- Visão Geral do Produto: Resumo de recursos e capacidades
- Blog: Apresentando o Aspose.Cells FOSS: Visão geral da biblioteca e início rápido