Jak wyeksportować Excel do Markdown w Pythonie
Eksportowanie danych z Excela do Markdown jest powszechnym wymogiem w pipeline’ach dokumentacji, generatorach README oraz w przepływach pracy statycznych witryn. Aspose.Cells FOSS for Python umożliwia to jako jedną metodę za pomocą workbook.save_as_markdown(): nie wymaga Microsoft Office.
Uwaga: Aspose.Cells FOSS eksportuje do XLSX, CSV, TSV, Markdown i JSON. Eksport do PDF nie jest częścią biblioteki FOSS.
Dlaczego eksportować Excel do Markdown przy użyciu Aspose.Cells FOSS?
- Brak zależności od Office: Konwertuje w całości w Pythonie bez natywnego COM ani instalacji Office.
- Obsługa w pamięci: Generuj ciągi Markdown bez żadnego I/O na dysku przy użyciu
MarkdownHandler. - Konfigurowalny wynik: Konfiguruj zachowanie eksportu za pomocą
MarkdownSaveOptions. - Przyjazny dla pipeline: Integruj bezpośrednio z generatorami dokumentacji, statycznymi stronami Hugo lub przepływami pracy GitHub Actions.
Przewodnik krok po kroku
Krok 1: Zainstaluj Aspose.Cells FOSS dla Pythona
Zainstaluj bibliotekę z PyPI przy użyciu pip:
pip install aspose-cells-fossSprawdź instalację:
from aspose.cells_foss import Workbook
print("Ready.")Krok 2: Utwórz skoroszyt i wypełnij dane
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 = 22500Krok 3: Eksportuj do Markdown
Wywołaj workbook.save_as_markdown() z .md ścieżką wyjściową:
workbook.save_as_markdown("report.md")
print("Markdown saved successfully.")Wyjściem jest standardowa tabela Markdown:
| Product | Q1 Revenue | Q2 Revenue |
|---|---|---|
| Widget A | 12500 | 15000 |
| Widget B | 8750 | 9200 |
| Widget C | 20000 | 22500 |Krok 4: Dostosuj przy użyciu MarkdownSaveOptions
Użyj MarkdownSaveOptions do kontrolowania formatu wyjścia:
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)Przekaż instancję MarkdownSaveOptions do save_as_markdown() w celu konfiguracji.
Krok 5: Generowanie Markdown w pamięci (bez operacji na plikach)
Użyj MarkdownHandler.save_markdown_to_string(), aby uzyskać Markdown jako ciąg znaków w Pythonie:
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.Krok 6: Załaduj istniejący plik XLSX i wyeksportuj do Markdown
from aspose.cells_foss import Workbook
workbook = Workbook("existing_report.xlsx")
workbook.save_as_markdown("existing_report.md")
print("Markdown export complete.")To zachowuje wszystkie wartości komórek i podstawową strukturę. Uwaga: Eksport Markdown odczytuje tylko cell.value — komórki, które zawierają wyłącznie formułę bez zapisanego wyniku, będą wyświetlane jako puste w wyniku. Biblioteka nie ocenia formuł w czasie eksportu. Aby zapewnić wyświetlanie wyników formuł, najpierw otwórz plik w Excelu lub LibreOffice (które oceniają i zapisują wyniki formuł), zapisz jako XLSX, a następnie wyeksportuj ponownie.
Krok 7: Obsługa błędów
Opakuj eksporty w bloki try/except do użytku produkcyjnego:
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 FalseTypowe problemy i rozwiązania
1. Pusty wynik Markdown
Cause: Arkusz nie zawiera wypełnionych komórek.
Fix: Potwierdź, że ws.cells["A1"].value jest ustawiony i nie jest None przed wywołaniem save_as_markdown().
2. ModuleNotFoundError: No module named 'aspose.cells_foss'
Cause: Pakiet nie jest zainstalowany lub użyto niewłaściwej nazwy pakietu.
Fix: Uruchom pip install aspose-cells-foss. Import to from aspose.cells_foss import ... (podkreślenie, a nie kropka).
3. AttributeError: 'Workbook' object has no attribute 'save_as_markdown'
Przyczyna: Zainstalowałeś niewłaściwy pakiet (aspose-cells-python zamiast aspose-cells-foss).
Rozwiązanie: pip install aspose-cells-foss i potwierdź from aspose.cells_foss import Workbook.
4. Problemy z kodowaniem w pliku wyjściowym
Przyczyna: Zapisywanie ciągu Markdown do pliku bez określenia kodowania UTF-8.
Rozwiązanie: Użyj MarkdownHandler.save_markdown_to_string() i zapisz jawnie:
with open("output.md", "w", encoding="utf-8") as f:
f.write(md_string)Najczęściej zadawane pytania
Czy mogę wyeksportować do PDF zamiast tego?
Nie. Eksport do PDF nie jest dostępny w Aspose.Cells FOSS. Użyj komercyjnego pakietu aspose-cells-python do wyjścia PDF.
Jakie formaty wejściowe mogę wczytać, a następnie wyeksportować do Markdown?
Pliki XLSX i CSV można załadować przy użyciu Workbook("file.xlsx"), a następnie wyeksportować do Markdown.
Jak wyeksportować tylko jeden arkusz, gdy jest ich wiele?
Domyślnie save_as_markdown() eksportuje pierwszy arkusz. Przekaż instancję MarkdownSaveOptions w celu dodatkowej konfiguracji.
Czy mogę uruchomić to na Linuxie lub macOS?
Tak. Biblioteka działa na systemach Windows, Linux i macOS bez żadnej specyficznej konfiguracji platformy.
Powiązane zasoby:
- Aspose.Cells FOSS for Python: Przewodnik programisty
- Eksport formatu arkusza kalkulacyjnego
- Rozpoczęcie / Instalacja
- Referencja API:
MarkdownHandler,MarkdownSaveOptions,Workbook.save_as_markdown() - Baza wiedzy: Więcej przewodników krok po kroku (wykresy, stylizacja, ładowanie)
- Przegląd produktu: Podsumowanie funkcji i możliwości
- Blog: Wprowadzenie Aspose.Cells FOSS: Przegląd biblioteki i szybki start