Cara Mengeksport Excel ke Markdown dalam Python
Mengeksport data Excel ke Markdown adalah keperluan biasa untuk saluran dokumentasi, penjana README, dan aliran kerja laman statik. Aspose.Cells FOSS for Python menjadikan ini operasi satu kaedah melalui workbook.save_as_markdown(): tidak memerlukan Microsoft Office.
Nota: Aspose.Cells FOSS mengeksport ke XLSX, CSV, TSV, Markdown, dan JSON. Eksport PDF bukan sebahagian daripada perpustakaan FOSS.
Mengapa Mengeksport Excel ke Markdown dengan Aspose.Cells FOSS?
- Tiada kebergantungan Office: Menukar sepenuhnya dalam Python tanpa COM asli atau pemasangan Office.
- Sokongan dalam memori: Menjana rentetan Markdown tanpa sebarang I/O cakera menggunakan
MarkdownHandler. - Output boleh disesuaikan: Konfigurasikan kelakuan eksport melalui
MarkdownSaveOptions. - Mesra saluran paip: Integrasikan secara langsung ke dalam penjana dokumentasi, laman statik Hugo, atau aliran kerja GitHub Actions.
Panduan Langkah demi Langkah
Langkah 1: Pasang Aspose.Cells FOSS untuk Python
Pasang perpustakaan dari PyPI menggunakan pip:
pip install aspose-cells-fossSahkan pemasangan:
from aspose.cells_foss import Workbook
print("Ready.")Langkah 2: Cipta Buku Kerja dan Isi Data
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 = 22500Langkah 3: Eksport ke Markdown
Panggil workbook.save_as_markdown() dengan laluan output .md:
workbook.save_as_markdown("report.md")
print("Markdown saved successfully.")Output ialah jadual Markdown standard:
| Product | Q1 Revenue | Q2 Revenue |
|---|---|---|
| Widget A | 12500 | 15000 |
| Widget B | 8750 | 9200 |
| Widget C | 20000 | 22500 |Langkah 4: Sesuaikan dengan MarkdownSaveOptions
MarkdownSaveOptions
Gunakan MarkdownSaveOptions untuk mengawal format output:
⟦/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)Hantar satu contoh MarkdownSaveOptions kepada save_as_markdown() untuk konfigurasi.
Langkah 5: Hasilkan Markdown Dalam Memori (Tiada I/O Fail)
Gunakan MarkdownHandler.save_markdown_to_string() untuk mendapatkan Markdown sebagai rentetan 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.Langkah 6: Muat XLSX Sedia Ada dan Eksport ke Markdown
from aspose.cells_foss import Workbook
workbook = Workbook("existing_report.xlsx")
workbook.save_as_markdown("existing_report.md")
print("Markdown export complete.")Ini mengekalkan semua nilai sel dan struktur asas. Nota: Eksport Markdown hanya membaca cell.value — sel yang hanya mengandungi formula tanpa nilai yang disimpan akan kelihatan kosong dalam output. Perpustakaan tidak menilai formula semasa eksport. Untuk memastikan hasil formula muncul, buka fail tersebut dalam Excel atau LibreOffice terlebih dahulu (yang menilai dan menyimpan hasil formula), simpan sebagai XLSX, kemudian eksport semula.
Langkah 7: Pengendalian Ralat
Balut eksport dalam blok try/except untuk penggunaan produksi:
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 FalseMasalah Umum dan Penyelesaian
1. Output Markdown kosong
Cause: Lembaran kerja tidak mempunyai sel yang diisi.
Fix: Sahkan ws.cells["A1"].value telah ditetapkan dan bukan None sebelum memanggil save_as_markdown().
2. ModuleNotFoundError: No module named 'aspose.cells_foss'
Cause: Pakej tidak dipasang atau nama pakej yang salah digunakan.
Fix: Jalankan pip install aspose-cells-foss. Importnya ialah from aspose.cells_foss import ... (garis bawah, bukan titik).
3. AttributeError: 'Workbook' object has no attribute 'save_as_markdown'
Punca: Anda memasang pakej yang salah (aspose-cells-python bukannya aspose-cells-foss).
Pembaikan: pip install aspose-cells-foss dan sahkan from aspose.cells_foss import Workbook.
4. Masalah pengekodan dalam fail output
Punca: Menulis rentetan Markdown ke fail tanpa menentukan pengekodan UTF-8.
Pembaikan: Gunakan MarkdownHandler.save_markdown_to_string() dan tulis secara eksplisit:
with open("output.md", "w", encoding="utf-8") as f:
f.write(md_string)Soalan Lazim
Bolehkah saya mengeksport ke PDF sebagai gantinya?
Tidak. Eksport PDF tidak tersedia dalam Aspose.Cells FOSS. Gunakan pakej komersial aspose-cells-python untuk output PDF.
Format input mana yang boleh saya muat dan kemudian eksport ke Markdown?
Fail XLSX dan CSV boleh dimuatkan dengan Workbook("file.xlsx") dan kemudian dieksport ke Markdown.
Bagaimana saya mengeksport hanya satu helaian apabila terdapat banyak helaian?
Secara lalai, save_as_markdown() mengeksport lembar kerja pertama. Hantar satu contoh MarkdownSaveOptions untuk konfigurasi tambahan.
Bolehkah saya menjalankannya pada Linux atau macOS?
Ya. Pustaka ini berjalan pada Windows, Linux, dan macOS tanpa sebarang persediaan khusus platform.
Sumber Berkaitan:
- Aspose.Cells FOSS untuk Python: Panduan Pembangun
- Eksport Format Hamparan
- Mula Menggunakan / Pemasangan
- Rujukan API:
MarkdownHandler,MarkdownSaveOptions,Workbook.save_as_markdown() - Pangkalan Pengetahuan: Lebih banyak panduan cara (carta, penataan, pemuatan)
- Gambaran Produk: Ringkasan ciri dan keupayaan
- Blog: Memperkenalkan Aspose.Cells FOSS: Gambaran perpustakaan dan permulaan cepat