Excel'i Python içinde Markdown'e Nasıl Dışa Aktarılır

Excel'i Python içinde Markdown'e Nasıl Dışa Aktarılır

Excel verilerini Markdown’a aktarmak, belgeleme hatları, README oluşturucuları ve statik site iş akışları için yaygın bir gereksinimdir. Aspose.Cells FOSS for Python bunu tek bir yöntemle şu şekilde gerçekleştirir: workbook.save_as_markdown(): Microsoft Office gerektirmez.

Not: Aspose.Cells FOSS, XLSX, CSV, TSV, Markdown ve JSON formatlarına dışa aktarır. PDF dışa aktarımı FOSS kütüphanesinin bir parçası değildir.

Aspose.Cells FOSS ile Excel’i Markdown’e Neden Dışa Aktarmalısınız?

  1. Office bağımlılığı yok: Yerel COM veya Office kurulumu olmadan tamamen Python içinde dönüştürür.
  2. Bellek içi destek: Disk I/O’su olmadan Markdown dizgileri oluşturmak için kullanır MarkdownHandler.
  3. Özelleştirilebilir çıktı: Dışa aktarma davranışını şu şekilde yapılandırın: MarkdownSaveOptions.
  4. İş akışı dostu: Doğrudan belge oluşturuculara, Hugo statik sitelere veya GitHub Actions iş akışlarına entegre edin.

Adım Adım Kılavuz

Adım 1: Aspose.Cells FOSS for Python’i kurun

Kütüphaneyi pip kullanarak PyPI’dan kurun:

pip install aspose-cells-foss

Kurulumu doğrulayın:

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

Adım 2: Bir Çalışma Kitabı Oluşturun ve Verileri Doldurun

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

Adım 3: Markdown’e Dışa Aktar

Çağır workbook.save_as_markdown() ile bir .md çıktı yolu:

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

Çıktı standart bir Markdown tablosudur:

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

Adım 4: MarkdownSaveOptions ile Özelleştir

Kullan MarkdownSaveOptions çıktı formatını kontrol etmek için:

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)

Birini geçirin MarkdownSaveOptions örnek için save_as_markdown() yapılandırma için.


Adım 5: Markdown’ı Bellekte Oluştur (Dosya G/Ç Yok)

Kullan MarkdownHandler.save_markdown_to_string() Markdown’ı bir Python dizesi olarak almak için:

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.

Adım 6: Mevcut bir XLSX dosyasını yükleyin ve Markdown olarak dışa aktarın

from aspose.cells_foss import Workbook

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

Bu, tüm hücre değerlerini ve temel yapıyı korur. Not: Markdown dışa aktarımı şunları okur cell.value yalnızca — yalnızca bir formül içeren ve önbelleğe alınmış değeri olmayan hücreler çıktıda boş görünecektir. Kütüphane dışa aktarma sırasında formülleri değerlendirmez. Formül sonuçlarının görünmesini sağlamak için, dosyayı önce Excel veya LibreOffice’ta açın (bu, formül sonuçlarını değerlendirir ve önbelleğe alır), XLSX olarak kaydedin, ardından yeniden dışa aktarın.


Adım 7: Hata İşleme

Üretim ortamında dışa aktarımları try/except bloklarıyla sarın:

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

Yaygın Sorunlar ve Çözümler

1. Empty Markdown output

Neden: Çalışma sayfasında doldurulmuş hücre yok. Düzelt: Onaylayın ws.cells["A1"].value ayarlandı ve değil None çağırmadan önce save_as_markdown().

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

Neden: Paket yüklü değil veya yanlış paket adı kullanıldı. Düzelt:Çalıştır pip install aspose-cells-foss. İçe aktarma şudur from aspose.cells_foss import ... (alt çizgi, nokta değil).

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

Neden: Yanlış paketi kurdunuz (aspose-cells-python yerine aspose-cells-foss). Düzelt: pip install aspose-cells-foss ve onaylayın from aspose.cells_foss import Workbook.

4. Encoding issues in output file

Neden: UTF-8 kodlaması belirtilmeden Markdown dizesini bir dosyaya yazmak. Düzelt: Kullan MarkdownHandler.save_markdown_to_string() ve açıkça yazın:

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

Sık Sorulan Sorular

PDF olarak dışa aktarabilir miyim?

Hayır. PDF dışa aktarma Aspose.Cells FOSS’ta mevcut değil. Ticari aspose-cells-python paketi PDF çıktısı için.

Hangi giriş formatlarını yükleyebilir ve ardından Markdown’a dışa aktarabilirim?

XLSX ve CSV dosyaları şununla yüklenebilir Workbook("file.xlsx") ve ardından Markdown’a dışa aktarıldı.

Birden fazla sayfa olduğunda yalnızca bir sayfayı nasıl dışa aktarırım?

Varsayılan olarak, save_as_markdown() ilk çalışma sayfasını dışa aktarır. Bir MarkdownSaveOptions ek yapılandırma için bir örnek.

Bunu Linux veya macOS’ta çalıştırabilir miyim?

Evet. Kütüphane, Windows, Linux ve macOS’ta platforma özgü bir kurulum gerektirmeden çalışır.


İlgili Kaynaklar:

 Türkçe