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

Aspose.Note FOSS for Python

Lesen, Durchlaufen und Exportieren von Microsoft OneNote (.one)-Dateien aus Python — kostenlos und Open‑Source, kein Microsoft Office erforderlich.

Python-Bibliothek mit Open Source für OneNote-Dateien

FOSS für Python ist eine 100% kostenlose, MIT-lizenzierte Bibliothek, mit der Sie Microsoft OneNote (.one) Dateien vollständig aus Python lesen können, ohne Microsoft Office, COM Automatisierung und keine proprietäre Laufzeit erforderlich. Es stellt eine saubere öffentliche API (aspose.note.*) dar, die auf dem vertrauten Aspose.Note Modell für .NET basiert und durch einen eingebauten MS-ONE / OneStore binären Parser unterstützt wird, der in reiner Python geschrieben wurde.

Installieren von PyPI mit pip install aspose-note (oder pip install "aspose-note[pdf]", um PDF-Export zu ermöglichen). Erfordert Python 3.10 oder höher.

Die Bibliothek eignet sich für Dokumentenautomatisierungs-Skripte, Inhaltsindexpipelines, Archivierungswerkzeuge und jeden Serverarbeitsfluss, der OneNote-Inhalte ohne Microsoft Office-Abhängigkeit verbrauchen muss. Für die Unternehmensproduktfamilie siehe Aspose.Note — Enterprise Product Family.

OneNote-Dokumente lesen und durchsuchen

  • Load .one Files: Öffnen Sie einen beliebigen OneNote-Bereich aus einem Dateipfad oder binären Strom über Document.
  • Full DOM-Übersicht: Navigation Document → Page → Outline → OutlineElement → RichText / Image / Table / AttachedFile. Das ist ein sehr schwieriges Problem.
  • ** Rich Text Extraction:** Lesen Sie den Rohtext über RichText.Text oder überprüfen Sie die Segmente TextRun auf fett, kursiv, Schriftart, Farbe und Hyperlink-Metadaten.
  • ** Tabellenanalyse:** Durchqueren Sie Table → TableRow → TableCell Hierarchien; lesen Sie Spaltenbreiten über TableColumn.Width.
  • Tag-Inspektion: Lesen Sie NoteTag Metadaten (Form, Etikett, Farbe, Vollendungsstatus) von Text-, Bild- und Tabellenknoten.

Wo Aspose.Note FOSS verwendet werden kann

  • Inhalteindizierung: Entnehmen und indizieren Sie alle Texte aus OneNote-Archiven für Suchpipelines.
  • Migration von Dokumenten: Exportieren Sie OneNote-Bereiche in PDF, einfachen Text oder strukturierte Daten.
  • Archive: Speichern Sie eingebettete Bilder und Anhänge auf Festplatte aus den Dateien .one.
  • CI/CD-Arbeitsflüsse: Validieren oder verarbeiten Sie OneNote-Inhalte in Docker-Containern.
  • Linien der Wissensbasis: Extrahieren von strukturiertem Inhalt aus OneNote-Teamnotebooks.

Export, Bilder und Anhänge

  • PDF-Export: Speichern Sie jedes geladene Document als PDF mit Document.Save(path, SaveFormat.Pdf). Die FOSS‑Edition verwendet ein Standard‑Rendering; erweiterte seitenbezogene PDF‑Optionen sind in dieser Version nicht verfügbar.
  • Bild-Export: Durchlaufen Sie Image-Knoten, um Rohbytes (Bytes), Dateinamen (FileName) und Abmessungen (OriginalWidth, OriginalHeight) zu erhalten.
  • Anhang speichern: Durchlaufen Sie AttachedFile-Knoten, um eingebettete Dateianhänge auf die Festplatte zu speichern.
  • Stream‑basiertes Laden: Öffnen Sie .one-Dateien aus einem Binärstream (z. B. io.BytesIO), ohne sie auf die Festplatte zu schreiben.

Entwicklererfahrung

Aspose.Note FOSS lässt sich mit einem einzigen pip install aspose-note-Befehl installieren. Das Basispaket hat keine optionalen Abhängigkeiten; der PDF-Export erfordert ReportLab, das über pip install "aspose-note[pdf]" installiert wird.

Der API ist nach dem bekannten Aspose.Note für die .NET-Schnittstelle modelliert: Document, Page, Outline, RichText, Image, Table, AttachedFile. Die Bibliothek ist MIT-lizenziert, Open-Source und nimmt Fehlerberichte sowie Beiträge auf GitHub entgegen.

Eine OneNote-Datei laden und den gesamten Text extrahieren

Installieren Sie mit pip, dann geben Sie einen Dateipfad an Document() weiter, um das binäre OneNote-Format zu analysieren. GetChildNodes(RichText) führt eine tiefe rekursive Suche durch und gibt jeden Textknoten im Dokument zurück, was für die Volltextindizierung oder Migrationspipelines nützlich ist.

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)

Exportieren in PDF und Speichern von beigefügten Bildern

Der PDF-Export erfordert die optionale ReportLab-Abhängigkeit. Installieren Sie ihn mit pip install "aspose-note[pdf]". Das gleiche Document Objekt kann auch für Image Knoten wiederholt werden, um alle eingebetteten Bilder in einem einzigen Zug auf der Festplatte zu extrahieren und zu speichern.

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)

Häufig gestellte Fragen

Was ist Aspose.Note FOSS für Python?

Es ist eine kostenlose, MIT-lizenzierte Python-Bibliothek zum Lesen von Microsoft OneNote (.one) Dateien ohne die Notwendigkeit von Office, COM Automatisierung oder proprietäre Laufzeit.

Welche OneNote-Formatvarianten werden unterstützt?

OneNote 2010, OneNOte Online und die Varianten des Formats von OneNot 2007. Jede gültige .one-Sektionsdatei kann geladen werden.

Wie installiere ich es?

Führen Sie pip install aspose-note für die Basisbibliothek aus oder pip install "aspose-note[pdf]", um die optionale ReportLab-Abhängigkeit zum PDF-Export einzubeziehen.

Kann ich OneNote-Dateien in PDF exportieren?

Ja. Ruf Document.Save(path, SaveFormat.Pdf). PDF-Export erfordert die optionale ReportLab-Abhängigkeit, die über das Extra [pdf] installiert ist.

Kann ich .one Dateien aus einem Stream laden?

Ja. Die Klasse Document akzeptiert einen binären Stream (z.B. io.BytesIO oder eine HTTP-Antwortstelle), so dass Sie Dateien verarbeiten können, ohne auf Festplatte zu schreiben.

Welche Python-Version ist erforderlich?

Python 3.10 oder neuer ist erforderlich.

Kann ich eine .one-Datei schreiben oder ändern?

Nein. Die aktuelle Ausgabe ist nur für den Lesebereich. Sie kann jede gültige .one-Sektionsdatei öffnen und analysieren, aber das Schreiben in das binäre OneNote-Format wird nicht unterstützt.

Werden verschlüsselte OneNote-Dokumente unterstützt?

Nein. Das Laden einer passwortgeschützten Datei .one erzeugt ein IncorrectPasswordException. Verschlüsselte Dokumente werden in der aktuellen Ausgabe nicht unterstützt.

Wo finde ich den Quellcode?

Die Bibliothek ist MIT-lizenziert und auf GitHub gehostet. Bugberichte und Pull Requests sind willkommen.

  

Support und Lernressourcen

 Deutsch