Як експортувати Excel у Markdown у Python
Експорт даних Excel у Markdown є поширеною вимогою для конвеєрів документації, генераторів README та робочих процесів статичних сайтів. Aspose.Cells FOSS for Python здійснює це як операцію одним методом через workbook.save_as_markdown(): не потрібен Microsoft Office.
Примітка: Aspose.Cells FOSS експортує у XLSX, CSV, TSV, Markdown та JSON. Експорт у PDF не входить до бібліотеки FOSS.
Чому експортувати Excel у Markdown за допомогою Aspose.Cells FOSS?
- Без залежності від Office: Перетворює повністю в Python без нативного COM або встановлення Office.
- Підтримка в пам’яті: Генеруйте рядки Markdown без будь‑якого дискового вводу/виводу, використовуючи
MarkdownHandler. - Налаштовуваний вивід: Налаштуйте поведінку експорту за допомогою
MarkdownSaveOptions. - Зручний для конвеєрів: Інтегруйте безпосередньо в генератори документації, статичні сайти Hugo або робочі процеси GitHub Actions.
Покроковий посібник
Крок 1: Встановіть Aspose.Cells FOSS для Python
Встановіть бібліотеку з PyPI за допомогою pip:
pip install aspose-cells-fossПеревірте встановлення:
from aspose.cells_foss import Workbook
print("Ready.")Крок 2: Створіть робочу книгу та заповніть дані
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 = 22500Крок 3: Експорт у Markdown
Виклик workbook.save_as_markdown() з .md шлях виводу:
workbook.save_as_markdown("report.md")
print("Markdown saved successfully.")Вивід — це стандартна таблиця Markdown:
| Product | Q1 Revenue | Q2 Revenue |
|---|---|---|
| Widget A | 12500 | 15000 |
| Widget B | 8750 | 9200 |
| Widget C | 20000 | 22500 |Крок 4: Налаштування за допомогою MarkdownSaveOptions
Використовуйте MarkdownSaveOptions для керування форматом виводу:
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)Передайте MarkdownSaveOptions екземпляр до save_as_markdown() для налаштування.
Крок 5: Генерація Markdown у пам’яті (без файлового вводу/виводу)
Використовуйте MarkdownHandler.save_markdown_to_string() для отримання Markdown у вигляді рядка 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.Крок 6: Завантажити існуючий XLSX і експортувати в Markdown
from aspose.cells_foss import Workbook
workbook = Workbook("existing_report.xlsx")
workbook.save_as_markdown("existing_report.md")
print("Markdown export complete.")Це зберігає всі значення клітинок та базову структуру. Примітка: Експорт у Markdown читає cell.value лише — клітини, які містять лише формулу без кешованого значення, будуть порожніми у виводі. Бібліотека не обчислює формули під час експорту. Щоб результати формул відображалися, спочатку відкрийте файл у Excel або LibreOffice (які обчислюють і кешують результати формул), збережіть як XLSX, потім повторно експортуйте.
Крок 7: Обробка помилок
Обгорніть експорти у блоки try/except для використання у продакшн:
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 FalseТипові проблеми та їх вирішення
1. Empty Markdown output
Причина: Робочий лист не містить заповнених клітин. Виправлення: Підтвердити ws.cells["A1"].value встановлено і не None перед викликом save_as_markdown().
2. ModuleNotFoundError: No module named 'aspose.cells_foss'
Причина: Пакет не встановлено або використано неправильну назву пакету. Виправлення: Запустіть pip install aspose-cells-foss. Імпорт є from aspose.cells_foss import ... (підкреслення, а не крапка).
3. AttributeError: 'Workbook' object has no attribute 'save_as_markdown'
Причина: Ви встановили неправильний пакет (aspose-cells-python замість aspose-cells-foss). Виправити: pip install aspose-cells-foss і підтвердьте from aspose.cells_foss import Workbook.
4. Encoding issues in output file
Причина: Запис рядка Markdown у файл без вказання кодування UTF-8. Виправити: Використовувати MarkdownHandler.save_markdown_to_string() і напишіть явно:
with open("output.md", "w", encoding="utf-8") as f:
f.write(md_string)Часті запитання
Чи можна експортувати в PDF замість цього?
Ні. Експорт у PDF недоступний у Aspose.Cells FOSS. Використовуйте комерційну aspose-cells-python пакет для виведення PDF.
Які формати вхідних даних я можу завантажити, а потім експортувати в Markdown?
Файли XLSX та CSV можна завантажити за допомогою Workbook("file.xlsx") і потім експортувати у Markdown.
Як експортувати лише один лист, коли їх декілька?
За замовчуванням, save_as_markdown() експортує перший лист. Передайте MarkdownSaveOptions екземпляр для додаткової конфігурації.
Чи можу я запускати це на Linux або macOS?
Так. Бібліотека працює на Windows, Linux та macOS без будь‑якої специфічної для платформи налаштування.
Пов’язані ресурси:
- Aspose.Cells FOSS for Python: Developer Guide
- Експорт формату електронних таблиць
- Початок роботи / Встановлення
- Довідник API:
MarkdownHandler,MarkdownSaveOptions,Workbook.save_as_markdown() - База знань: Більше посібників (діаграми, оформлення, завантаження)
- Огляд продукту: Підсумок функцій та можливостей
- Блог: Представляємо Aspose.Cells FOSS: Огляд бібліотеки та швидкий старт