1. Produk
  2.   Aspose.Note
  3.   Aspose.Note FOSS for Python

Aspose.Note FOSS for Python

Baca, telusuri, dan ekspor file Microsoft OneNote (.one) dari Python — gratis dan sumber terbuka, tidak memerlukan Microsoft Office.

Perpustakaan Python Open-Source untuk File OneNote

FOSS for Python adalah perpustakaan berlisensi MIT yang 100% gratis, memungkinkan Anda membaca file Microsoft OneNote (.one) sepenuhnya dari Python, tanpa Microsoft Office, tidak ada otomatisasi COM, dan tidak diperlukan waktu runtime milik. Ini mengekspos API publik bersih (aspose.note.*) dimodelkan pada Aspose.Note untuk antarmuka .NET, didukung oleh built-in MS-ONE / OneStore binary parser ditulis dalam Python murni.

Instal dari PyPI dengan pip install aspose-note (atau pip install "aspose-note[pdf]" untuk mengaktifkan ekspor PDF). Memerlukan Python 3.10 atau lebih baru.

Perpustakaan ini cocok untuk skrip otomatisasi dokumen, pipa pengindeksan konten, alat arsip dan alur kerja sisi server yang perlu mengkonsumsi konten OneNote tanpa ketergantungan Microsoft Office. Untuk keluarga produk perusahaan, lihat Aspose.Note — Enterprise Product Family.

Membaca dan Menelusuri Dokumen OneNote

  • ** Load .one file:** Buka bagian OneNote dari jalur file atau binary stream melalui Document.
  • Full DOM traversal: Navigasi Document → Page → Outline → OutlineElement → RichText / Image / Table / AttachedFile.
  • ** Ekstraksi teks kaya:** Baca teks mentah melalui RichText.Text atau periksa segmen TextRun untuk metadata tebal, kursif, font, warna, dan hyperlink.
  • Penguraian tabel: Melalui hierarki Table → TableRow → TableCell; baca lebar kolom melalui TableColumn.Width.
  • ** Pemeriksaan tag:** Baca NoteTag metadata (bentuk, label, warna, status penyelesaian) pada teks, gambar, dan node tabel.

Dimana Aspose.Note FOSS dapat digunakan

  • Indexing konten: Ekstrak dan indeks semua teks dari arsip OneNote untuk pipa pencarian.
  • Migrasi dokumen: Ekspor bagian OneNote ke PDF, teks kosong, atau data terstruktur.
  • ** Alat arsip:** Simpan gambar dan lampiran tertanam ke disk dari file .one .
  • Circuit/CD workflows: Memvalidasi atau memproses konten OneNote di dalam Docker container.
  • ** Pipelines basis pengetahuan:** Ekstrak konten terstruktur dari buku catatan tim OneNote.

Ekspor, Gambar, dan Lampiran

  • PDF ekspor: Simpan semua dimuat Document ke PDF menggunakan Document.Save(path, SaveFormat.Pdf). Edisi FOSS menggunakan rendering default; pilihan PDF per halaman lanjutan tidak tersedia dalam rilis ini.
  • Image export: Iterate Image node untuk mengambil byte mentah (Bytes), nama file ( FileName) dan dimensi ( OriginalWidth, OriginalHeight).
  • ** Menyimpan lampiran:** Iterate AttachedFile node untuk menyimpan file tertanam lampingan ke disk.
  • ** Loading berbasis stream:** Buka file .one dari aliran biner (misalnya, io.BytesIO) tanpa menulis ke disk.

Pengalaman Pengembang

Aspose.Note FOSS diinstal dengan satu perintah pip install aspose-note. Paket dasar tidak memiliki dependensi opsional; ekspor PDF memerlukan ReportLab, diinstal melalui pip install "aspose-note[pdf]".

API dimodelkan pada Aspose.Note yang familiar untuk antarmuka .NET: Document, Page, Outline, RichText, Image, Table, AttachedFile. Perpustakaan ini berlisensi MIT, sumber terbuka, dan menerima laporan bug serta kontribusi di GitHub.

Mengunggah file OneNote dan mengekstrak semua teks

Install dengan pip, lalu kirimkan path file ke Document() untuk menganalisis format biner OneNote. GetChildNodes(RichText) melakukan pencarian rekursif mendalam dan mengembalikan setiap node teks dalam dokumen, yang berguna untuk pengindeksan full-text atau pipa migrasi.

pip install aspose-note
from aspose.note import Document, RichText
doc = Document("notebook.one")
print(f"Pages: {len(list(doc))}")
# Extract all text across the entire document
texts = [rt.Text for rt in doc.GetChildNodes(RichText) if rt.Text]
for text in texts:
   print(text)

Ekspor ke PDF dan Simpan Gambar Terlampir

Ekspor PDF memerlukan dependensi opsional ReportLab. Instal dengan pip install "aspose-note[pdf]". Objek Document yang sama juga dapat diiterasi untuk node Image guna mengekstrak dan menyimpan semua gambar yang disematkan ke disk dalam satu kali proses.

from aspose.note import Document, SaveFormat, Image
import pathlib

doc = Document("notebook.one")

# Export the document to PDF (requires aspose-note[pdf])
doc.Save("output.pdf", SaveFormat.Pdf)

# Save all embedded images to disk
out_dir = pathlib.Path("images")
out_dir.mkdir(exist_ok=True)
for i, img in enumerate(doc.GetChildNodes(Image)):
   name = img.FileName or f"image_{i}.bin"
   (out_dir / name).write_bytes(img.Bytes)

Pertanyaan yang Sering Diajukan

Apa Aspose.Note FOSS untuk Python?

Ini adalah perpustakaan Python gratis, berlisensi MIT untuk membaca file Microsoft OneNote (.one) tanpa memerlukan Microsoft Office, otomatisasi COM, atau runtime proprietary apa pun.

Variasi format OneNote mana yang didukung?

OneNote 2010, OneNOte Online, dan varian format OneNot 2007. Setiap file bagian .one yang valid dapat dimuat.

Bagaimana cara saya menginstalnya?

Jalankan pip install aspose-note untuk perpustakaan dasar, atau pip install "aspose-note[pdf]" termasuk ketergantungan ReportLab opsional untuk ekspor PDF.

Bisakah saya mengekspor file OneNote ke PDF?

Ya. Panggil Document.Save(path, SaveFormat.Pdf). Ekspor PDF membutuhkan ketergantungan ReportLab opsional yang diinstal melalui ekstra [pdf] .

Bisakah saya memuat file .one dari stream?

Ya. Kelas Document menerima aliran biner (misalnya, io.BytesIO atau tubuh respons HTTP) sehingga Anda dapat memproses file tanpa menulis ke disk.

Versi Python apa yang diperlukan?

Python 3.10 atau lebih baru diperlukan.

Bisakah saya menulis atau memodifikasi file .one?

Tidak. Edisi saat ini hanya dibaca. Ini dapat membuka dan menganalisis file bagian .one yang valid, tetapi menulis kembali ke format biner OneNote tidak didukung.

Apakah dokumen OneNote terenkripsi didukung?

Tidak. Mengunggah file yang dilindungi kata sandi .one akan menghasilkan sebuah IncorrectPasswordException. Dokumen terenkripsi tidak didukung dalam edisi saat ini.

Dimana aku bisa menemukan kode sumbernya?

Perpustakaan ini dilisensikan oleh MIT dan dihosting di GitHub. Laporan bug dan permintaan pull disambut dengan baik.

  

Sumber Daya Dukungan dan Pembelajaran

 Bahasa Indonesia