Pengantar

Aspose.Note FOSS for Python is a free, MIT-licensed library for reading Microsoft OneNote .one file dalam Python. Ini menyediakan model objek dokumen (DOM) lengkap untuk menjelajahi halaman, mengekstrak teks dan gambar, menganalisis tabel, dan menulis file output PDF semua tanpa Microsoft Office atau runtime proprietari.

Install dengan satu perintah pip:

pip install aspose-note>=26.3.2

Aspose.Note FOSS for Python Is Now Available

Kami dengan senang hati mengumumkan ketersediaan Aspose.Note FOSS for Python Pada PyPI. Perpustakaan open source gratis ini memungkinkan pengembang Python membaca Microsoft OneNote .one file bagian, menjelajahi model objek dokumen penuh mereka, mengekstrak konten, dan mengekspor ke PDF, tanpa memerlukan Microsoft Office atau runtime proprietary.

Instal sekarang:

pip install aspose-note

Untuk ekspor PDF:

pip install "aspose-note[pdf]"

Apa itu Aspose.Catatan FOSS untuk Python?

Aspose.Note FOSS for Python is a 100% free, MIT-licensed Python library that provides an Aspose.Note-shaped public API (aspose.note.*) untuk membaca Microsoft OneNote. .one Ini didukung oleh built-in murni Python MS-ONE / OneStore binary parser, tanpa COM interop, tidak platform asli DLL, dan tidak perlu instalasi Microsoft Office.

Permukaan API dimodelkan setelah Aspose.Note for .NET, membuat transisi ini menjadi akrab bagi tim yang sudah menggunakan produk Aspose di platform lain.


Kemampuan Utama

Membaca file .one apa pun

Mengunggah file bagian OneNote 2010, OneNOTE Online, dan OneNot 2007 dari jalur file atau aliran biner manapun:

from aspose.note import Document

doc = Document("MyNotes.one")

Pergi melalui DOM dokumen penuh

Perpustakaan memaparkan model objek dokumen lengkap: Document → Page → Outline → OutlineElement → RichText / Image / Table / AttachedFile.Gunakan . GetChildNodes(Type) untuk pencarian rekursif, penyaringan tipe:

from aspose.note import Document, RichText

doc = Document("MyNotes.one")
all_text = [rt.Text for rt in doc.GetChildNodes(RichText) if rt.Text]

Ekstrak Teks dengan Format Kaya

Setiap RichText node berisi daftar dari TextRun Segmen. Setiap run membawa per-karakter TextStyle Metadata: tebal, kursif, garis bawah, nama font, warna font , alamat hyperlink, dan lainnya:

from aspose.note import Document, RichText

doc = Document("MyNotes.one")
for rt in doc.GetChildNodes(RichText):
    for run in rt.TextRuns:
        if run.Style.IsHyperlink:
            print(f"  Link: {run.Text} -> {run.Style.HyperlinkAddress}")
        elif run.Style.IsBold:
            print(f"  Bold: {run.Text}")

Simpan Gambar dan Lampiran

Memulihkan gambar tertanam sebagai byte mentah dengan nama file dan dimensi. Simpan berkas yang dilampirkan ke disk:

from aspose.note import Document, Image, AttachedFile

doc = Document("MyNotes.one")
for img in doc.GetChildNodes(Image):
    with open(img.FileName or "image.bin", "wb") as f:
        f.write(img.Bytes)

for af in doc.GetChildNodes(AttachedFile):
    with open(af.FileName or "attachment.bin", "wb") as f:
        f.write(af.Bytes)

Tabel analisis

Berjalanlah. Table → TableRow → TableCell hierarki dan isi sel yang dibaca:

from aspose.note import Document, Table, TableRow, TableCell, RichText

doc = Document("MyNotes.one")
for table in doc.GetChildNodes(Table):
    for row in table.GetChildNodes(TableRow):
        cells = [
            " ".join(rt.Text for rt in cell.GetChildNodes(RichText))
            for cell in row.GetChildNodes(TableCell)
        ]
        print(cells)

Ekspor ke PDF

Simpan dokumen yang dimuat ke PDF menggunakan backend ReportLab opsional. Konfigurasi kompresi gambar dan kualitas dengan PdfSaveOptions:

from aspose.note import Document, SaveFormat

# ------ Step 1: Open the document ------
doc = Document("MyNotes.one")

# ------ Step 2: Write the file (PDF format, export-only) ------
output_path = "output.pdf"
doc.Save(output_path, SaveFormat.Pdf)

Jenis Konten yang Didukung

Isi dari artikel ini:Didukung
Halaman dan judul halamanYa, aku tahu.
Teks sederhana (RichText.Text)Ya, aku tahu.
Format run (dewasa, kursif, garis bawah, font, warna)Ya, aku tahu.
Hyperlink dalam teks berjalanYa, aku tahu.
Gambar tertanam (byte, nama file, dimensi)Ya, aku tahu.
File yang dilampirkan (byte, nama file)Ya, aku tahu.
Tabel (baris, sel, lebar kolom)Ya, aku tahu.
Tag OneNote (Tag: Icon, Label, Highlight, CreationTime, CompletedTime)Ya, aku tahu.
Daftar bernomor dan tersusun (NumberList)Ya, aku tahu.
Metadata halaman (penulis, waktu penciptaan, tingkat)Ya, aku tahu.
Ekspor PDFYa (ReportLab diperlukan)
Tulis kembali ke: .oneTidak didukung
Dokumen terenkripsiTidak didukung

API yang akrab untuk Pengembang .NET

Tim yang sudah menggunakan Aspose.Catatan untuk .NET akan menemukan Python API segera dikenali. Kelas inti seperti Document, Page, RichText, Image, DocumentVisitor, dan SaveFormat cocok dengan .NET setara dalam nama dan perilaku.

Untuk skenario yang membutuhkan dukungan penulisan penuh, konversi ke format tambahan atau pengolahan dokumen terenkripsi, sistem komersial dapat digunakan untuk mengontrol data. Aspose.Note for .NET dan (b) Aspose.Note for Java produk yang tersedia.


Memulai

Bangun dan berlari dalam tiga langkah:

  1. Instal (Membuat): pip install aspose-note>=26.3.2
  2. Buka.: doc = Document("notebook.one") mendukung format OneNote 2007, 2010, dan Online
  3. Traverse (dalam bahasa Inggris): doc.GetChildNodes(RichText) Pencarian rekursif yang disaring jenis
  4. Ekspor ke file: doc.Save("output.pdf", SaveFormat.Pdf) Generasi PDF (hanya untuk ekspor); membutuhkan pip install "aspose-note[pdf]>=26.3.2"

Contoh berikut menunjukkan langkah 2 dan 3 (tidak diperlukan PDF):

from aspose.note import Document, RichText

doc = Document("notebook.one")
texts = [rt.Text for rt in doc.GetChildNodes(RichText) if rt.Text]
print("\n".join(texts[:5]))

Memulai dengan cepat

from aspose.note import Document, SaveFormat

# ------ Step A: Open the OneNote file ------
doc = Document("MyNotes.one")

# ------ Step B: Generate PDF (export-only) ------
# Requires: pip install "aspose-note[pdf]>=26.3.2"
output_file = "output.pdf"
doc.Save(output_file, SaveFormat.Pdf)
print("PDF generated successfully.")

Ringkasan Instalasi

KomandoTujuan
pip install aspose-notePerpustakaan inti (membaca, menyeberangi, akses DOM)
pip install "aspose-note[pdf]"Ekspor Core + PDF (menambahkan ReportLab)
pip install -e ".[pdf]"Instal yang dapat diedit dari sumber (kontributor)

Persyaratan: Python 3.10, 3.11 atau 3.12. Tidak diperlukan Microsoft Office.


Mulailah