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

Aspose.Note FOSS til Python

Læs, gennemse og eksporter Microsoft OneNote (.one)-filer fra Python — gratis og open-source, ingen Microsoft Office påkrævet.

Open-Source Python bibliotek til OneNote-filer

Aspose.Note FOSS for Python er et 100 % gratis, MIT-licenseret bibliotek, der lader dig læse Microsoft OneNote (.one)-filer helt fra Python, uden Microsoft Office, uden COM-automatisering og uden proprietær runtime. Det eksponerer et rent offentligt API (aspose.note.*) modelleret efter den velkendte Aspose.Note for .NET-grænseflade, understøttet af en indbygget MS-ONE/OneStore binær parser skrevet i ren Python.

Installer fra PyPI med pip install aspose-note (eller pip install "aspose-note[pdf]" for at aktivere PDF-eksport). Kræver Python 3.10 eller senere.

Biblioteket er egnet til dokumentautomatiserings‑scripts, indholdsindekserings‑pipelines, arkiveringsværktøjer og enhver server‑side‑arbejdsproces, der skal indlæse OneNote‑indhold uden en Microsoft Office‑afhængighed. For enterprise‑produktfamilien, se Aspose.Note — Enterprise Product Family.

Læs og gennemse OneNote-dokumenter

  • Indlæs .one-filer: Åbn enhver OneNote‑sektion fra en filsti eller binær strøm via Document.
  • Fuld DOM-traversering: Naviger Document → Page → Outline → OutlineElement → RichText / Image / Table / AttachedFile
  • Udtrækning af formateret tekst: Læs rå tekst via RichText.Text eller inspicer TextRun segmenter for fed, kursiv, skrifttype, farve og hyperlink-metadata.
  • Tabelparsing: Gå igennem Table → TableRow → TableCell hierarkier; læs kolonnebredder via TableColumn.Width.
  • Tag-inspektion: Læs NoteTag metadata (form, etiket, farve, fuldførelsestilstand) på tekst-, billed- og tabelnoder.

Hvor Aspose.Note FOSS kan bruges

  • Indholdsindeksering: Udtræk og indekser al tekst fra OneNote‑arkiver til søge‑pipelines.
  • Dokumentmigration: Eksporter OneNote‑sektioner til PDF, almindelig tekst eller strukturerede data.
  • Arkiveringsværktøjer: Gem indlejrede billeder og vedhæftninger på disken fra .one-filer.
  • CI/CD workflows: Valider eller behandl OneNote-indhold i Docker-containere.
  • Knowledge-base pipelines: Udtræk struktureret indhold fra team OneNote-notesbøger.

Eksporter, billeder og vedhæftede filer

  • PDF-eksport: Gem enhver indlæst Document som PDF ved hjælp af Document.Save(path, SaveFormat.Pdf). FOSS-udgaven bruger en standardrendering; avancerede side‑specifikke PDF‑indstillinger er ikke tilgængelige i denne udgivelse.
  • Billedeksport: Iterer Image noder for at hente rå bytes (Bytes), filnavn (FileName), og dimensioner (OriginalWidth, OriginalHeight).
  • Gemning af vedhæftning: Iterer AttachedFile noder for at gemme indlejrede filvedhæftninger på disken.
  • Stream-baseret indlæsning: Åbn .one filer fra en binær strøm (f.eks., io.BytesIO) uden at skrive til disk.

Udvikleroplevelse

Aspose.Note FOSS installeres med en enkelt pip install aspose-note kommando. Grundpakken har ingen valgfrie afhængigheder; PDF‑eksport kræver ReportLab, installeret via pip install "aspose-note[pdf]".

API’et er modelleret efter den velkendte Aspose.Note for .NET grænseflade: Document, Page, Outline, RichText, Image, Table, AttachedFile. Biblioteket er MIT-licenseret, open source, og accepterer fejlrapporter og bidrag på GitHub.

Indlæs en OneNote-fil og udtræk al tekst

Installer med pip, og send derefter en filsti til Document() for at parse OneNote-binærformatet. GetChildNodes(RichText) udfører en dyb rekursiv søgning og returnerer hver tekstnode i dokumentet, hvilket er nyttigt til fuldtekstsindeksering eller migrations‑pipelines.

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)

Eksporter til PDF og gem vedhæftede billeder

PDF-eksport kræver den valgfrie ReportLab-afhængighed. Installer den med pip install "aspose-note[pdf]". Det samme Document objekt kan også itereres for Image noder for at udtrække og gemme alle indlejrede billeder til disken i ét gennemløb.

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)

Ofte stillede spørgsmål

Hvad er Aspose.Note FOSS for Python?

Det er et gratis, MIT-licenseret Python bibliotek til at læse Microsoft OneNote (.one)-filer uden at kræve Microsoft Office, COM-automatisering eller nogen proprietær runtime.

Hvilke OneNote-formatvarianter understøttes?

OneNote 2010, OneNote Online og OneNote 2007 formatvarianter. Enhver gyldig .one sektionfil kan indlæses.

Hvordan installerer jeg det?

Kør pip install aspose-note for grundbiblioteket, eller pip install "aspose-note[pdf]" for at inkludere den valgfrie ReportLab-afhængighed til PDF-eksport.

Kan jeg eksportere OneNote-filer til PDF?

Ja. Kald Document.Save(path, SaveFormat.Pdf). PDF-eksport kræver den valgfrie ReportLab-afhængighed installeret via [pdf] extra.

Kan jeg indlæse .one-filer fra en stream?

Ja. Klassen Document accepterer en binær strøm (f.eks. io.BytesIO eller en HTTP svarkrop), så du kan behandle filer uden at skrive til disk.

Hvilken Python version er påkrævet?

Python 3.10 eller senere er påkrævet.

Kan jeg skrive eller ændre en .one-fil?

Nej. Den aktuelle udgave er skrivebeskyttet. Den kan åbne og parse enhver gyldig .one sektionfil, men at skrive tilbage til OneNote-binærformatet understøttes ikke.

Er krypterede OneNote-dokumenter understøttet?

Nej. Indlæsning af en adgangskodebeskyttet .one-fil udløser en IncorrectPasswordException. Krypterede dokumenter understøttes ikke i den aktuelle udgave.

Hvor kan jeg finde kildekoden?

Biblioteket er MIT-licenseret og hostet på GitHub. Fejlrapporter og pull requests er velkomne.

  

Support og læringsressourcer

 Dansk