Einführung

Aspose.Note FOSS for Python (aspose-note auf PyPI) ist eine kostenlose, MIT-lizenzierte Bibliothek für Microsoft OneNote lesen .one Die Version 26.3.2 schickt die Daten in Python. mit einem vollständigen Dokumentobjektmodell, das Seiten, Umrisse, Rich-Text-Knoten und Bilder umfasst;, und beigefügte Dateien keine Microsoft Office-Installation oder Windows-Abhängigkeit erforderlich.


Hauptmerkmale

Dokumentladung und Formaterkennung

Document ist die Wurzel des Objektmodells. Geben Sie einen Pfad für das Laden von unterstützten OneNote-Dateien an Das Format. FileFormat Eigentumsberichte, in welchem Format sie erkannt wurden.

from aspose.note import Document, FileFormat

doc = Document("notebook.one")
print(f"Format : {doc.FileFormat}")
print(f"Pages  : {len(list(doc))}")

Überschneidungen von Seiten und Titeln

Die Seiten sind: Page Die Anlage ist in der Lage, die Document.Jeder von uns . Page Metadaten wie die als Author, CreationTime,und . Title.Die . Title Knoten stellt wiederum die TitleText, TitleDate,und . TitleTime als RichText Kinder. - Ich weiß nicht.

from aspose.note import Document, Page

doc = Document("notebook.one")
for page in doc.GetChildNodes(Page):
    print(f"Author  : {page.Author}")
    print(f"Created : {page.CreationTime}")
    if page.Title and page.Title.TitleText:
        print(f"Title   : {page.Title.TitleText}")

Lesen von Textinhalten

RichText Knoten sind die Blätterknoten, die den tatsächlichen Textinhalt tragen. Iterate a RichText Gegenstand mit einem Standard for Schleife jedes Element ist ein Stringsegment. Verwenden Append() Hinzufügen neue Text mit einem Stil.

from aspose.note import Document, Page, Outline, RichText

doc = Document("notebook.one")
for page in doc.GetChildNodes(Page):
    for rt in page.GetChildNodes(RichText):
        text = "".join(rt)
        if text.strip():
            print(text[:120])

Eigenschaften des Umrisseinsatzes

Outline Knoten zeigen die Layout-Koordinaten: HorizontalOffset, VerticalOffset, MaxWidth, MaxHeight,und . MinWidth.Diese sind nützlich für Layout-bewusste Extraktion. oder die Neufassung von Seiten.

from aspose.note import Document, Outline

doc = Document("notebook.one")
for outline in doc.GetChildNodes(Outline):
    print(f"HOffset={outline.HorizontalOffset}  VOffset={outline.VerticalOffset}  MaxW={outline.MaxWidth}")

Dokumentenbaumkonstruktion

Erstellen Sie eine Document von Grund auf mit Hilfe der CompositeNode.AppendChildLast().Jeder Knotentyp kann zu seinem gültigen Stammwort hinzugefügt werden: PageDocument, OutlinePage, RichText Knoten Outline.

from aspose.note import Document, Page, Outline, RichText, ParagraphStyle, Title, SaveFormat

doc = Document()
page = Page()

title_text = RichText()
title_text.Append("My New Page", ParagraphStyle())
title = Title()
title.TitleText = title_text
page.Title = title

outline = Outline()
page.AppendChildLast(outline)
doc.AppendChildLast(page)
doc.Save("new_notebook.pdf", SaveFormat.Pdf)

Exportieren in PDF-Dateien

Document.Save() akzeptiert SaveFormat.Pdf ein PDF auf einen Pfad zu schreiben oder a) die BytesIO Die Exporte werden vollständig in der Prozessphase ohne externen Renderer durchgeführt.

import io
from aspose.note import Document, SaveFormat

doc = Document("notebook.one")

# File output
doc.Save("export.pdf", SaveFormat.Pdf)

# In-memory buffer
buf = io.BytesIO()
doc.Save(buf, SaveFormat.Pdf)
print(f"PDF bytes: {len(buf.getvalue())}")

Schneller Start

pip install aspose-note
from aspose.note import Document, Page, RichText, SaveFormat

doc = Document("notebook.one")

# Print all text
for page in doc.GetChildNodes(Page):
    for rt in page.GetChildNodes(RichText):
        print("".join(rt))

# Export to PDF
doc.Save("output.pdf", SaveFormat.Pdf)

Unterstützte Formate

Format der DatenbankErweiterungLesen Sie .Schreiben .
Ein-Not 2010.one
OneNote 2007 (Veröffentlichung).one
OneNote Online-Version von einem Text.one
PDF.pdf

Open Source und Lizenzierung

Aspose.Note FOSS for Python is released under the MIT License. Install from PyPI as aspose-note.Die kommerzielle Nutzung, Weiterverteilung und Modifikation sind alle erlaubt.


Wie man anfängt