Kā eksportēt Excel uz Markdown Python valodā

Kā eksportēt Excel uz Markdown Python valodā

Excel datu eksportēšana uz Markdown ir bieži sastopama prasība dokumentācijas cauruļvados, README ģeneratoros un statisko vietņu darba plūsmās. Aspose.Cells FOSS for Python to padara par vienas metodes operāciju, izmantojot workbook.save_as_markdown(): nav vajadzīgs Microsoft Office.

Piezīme: Aspose.Cells FOSS eksportē uz XLSX, CSV, TSV, Markdown un JSON. PDF eksportēšana nav daļa no FOSS bibliotēkas.

Kāpēc eksportēt Excel uz Markdown ar Aspose.Cells FOSS?

  1. Nav Office atkarības: Pārvērš pilnīgi Python valodā, bez vietējās COM vai Office instalācijas.
  2. Atmiņā balstīts atbalsts: Ģenerē Markdown virknes bez jebkādas diska I/O, izmantojot MarkdownHandler.
  3. Pielāgojams izvads: Konfigurējiet eksporta uzvedību, izmantojot MarkdownSaveOptions.
  4. Caurules draudzīgs: Integrējiet tieši dokumentācijas ģeneratoros, Hugo statiskajās vietnēs vai GitHub Actions darba plūsmās.

Rokasgrāmata soli pa solim

1. solis: Instalējiet Aspose.Cells FOSS priekš Python

Instalējiet bibliotēku no PyPI, izmantojot pip:

pip install aspose-cells-foss

Pārbaudiet instalāciju:

from aspose.cells_foss import Workbook
print("Ready.")

2. solis: Izveidot darblapu un aizpildīt datus

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

Solis 3: Eksportēt uz Markdown

Izsauciet workbook.save_as_markdown() ar .md izvades ceļu:

workbook.save_as_markdown("report.md")
print("Markdown saved successfully.")

Izvade ir standarta Markdown tabula:

| Product | Q1 Revenue | Q2 Revenue |
|---|---|---|
| Widget A | 12500 | 15000 |
| Widget B | 8750 | 9200 |
| Widget C | 20000 | 22500 |

4. solis: Pielāgot, izmantojot 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)

Padodiet MarkdownSaveOptions instance uz save_as_markdown() konfigurācijai.


Solis 5: Ģenerēt Markdown atmiņā (bez failu I/O)

Izmantojiet MarkdownHandler.save_markdown_to_string(), lai iegūtu Markdown kā Python virkni:

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. solis: Ielādēt esošu XLSX un eksportēt uz Markdown

from aspose.cells_foss import Workbook

workbook = Workbook("existing_report.xlsx")
workbook.save_as_markdown("existing_report.md")
print("Markdown export complete.")

Tas saglabā visas šūnu vērtības un pamata struktūru. Piezīme: Markdown eksportē tikai cell.value — šūnas, kas satur tikai formulu bez saglabātas vērtības, izvadē parādīsies tukšas. Bibliotēka neizvērtē formulas eksportēšanas brīdī. Lai nodrošinātu, ka formulas rezultāti tiek parādīti, vispirms atveriet failu programmā Excel vai LibreOffice (kas izvērtē un saglabā formulas rezultātus), saglabājiet kā XLSX, pēc tam eksportējiet vēlreiz.


7. solis: Kļūdu apstrāde

Iesaiņojiet eksportus try/except blokos ražošanas lietošanai:

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

Vispārējās problēmas un risinājumi

1. Tukšs Markdown izvads

Cause: Darblapa nav aizpildīta ar šūnām.
Fix: Apstipriniet, ka ws.cells["A1"].value ir iestatīts un nav None pirms izsaukt save_as_markdown().

2. ModuleNotFoundError: No module named 'aspose.cells_foss'

Iemesls: Pakotne nav instalēta vai tika izmantots nepareizs pakotnes nosaukums.
Risinājums: Izpildiet pip install aspose-cells-foss. Importa veids ir from aspose.cells_foss import ... (pasvītra, ne punkts).

3. AttributeError: 'Workbook' object has no attribute 'save_as_markdown'

Iemesls: Jūs instalējāt nepareizo pakotni (aspose-cells-python nevis aspose-cells-foss).
Risinājums: pip install aspose-cells-foss un apstipriniet from aspose.cells_foss import Workbook.

4. Kodēšanas problēmas izvades failā

Iemesls: Markdown virknes rakstīšana failā, nenorādot UTF-8 kodējumu.
Labojums: Izmantojiet MarkdownHandler.save_markdown_to_string() un rakstiet tieši:

with open("output.md", "w", encoding="utf-8") as f:
    f.write(md_string)

Biežāk uzdotie jautājumi

Vai varu eksportēt uz PDF vietā?

Nē. PDF eksportēšana nav pieejama Aspose.Cells FOSS. Izmantojiet komerciālo aspose-cells-python pakotni PDF izvadei.

Kādus ievades formātus es varu ielādēt un pēc tam eksportēt uz Markdown?

XLSX un CSV failus var ielādēt, izmantojot Workbook("file.xlsx"), un pēc tam eksportēt uz Markdown.

Kā eksportēt tikai vienu lapu, ja ir vairākas lapas?

Pēc noklusējuma, save_as_markdown() eksportē pirmo darblapu. Nododiet MarkdownSaveOptions instance papildu konfigurācijai.

Vai es varu to palaist Linux vai macOS?

Jā. Bibliotēka darbojas Windows, Linux un macOS bez jebkādas platformas specifiskas iestatīšanas.


Saistītie resursi:

 Latviešu