Как да експортирате 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 в паметта (без файлов I/O)
Използвайте 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. Празен Markdown изход
Причина: Работният лист няма попълнени клетки.
Решение: Потвърдете, че 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. Проблеми с кодирането в изходния файл
Причина: Записване на низ в 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: Ръководство за разработчици
- Експорт на електронни таблици
- Първи стъпки / Инсталиране
- API справка:
MarkdownHandler,MarkdownSaveOptions,Workbook.save_as_markdown() - База от знания: Още ръководства (диаграми, стилизиране, зареждане)
- Преглед на продукта: Обобщение на функции и възможности
- Блог: Представяне на Aspose.Cells FOSS: Общ преглед на библиотеката и бърз старт