Aspose.Note FOSS for Python Is Now Available

Vi är glada att kunna meddela tillgängligheten av Aspose.Note FOSS for Python på PyPI. Detta fria, öppen källkod-bibliotek låter Python-utvecklare läsa Microsoft OneNote .one sektionfiler, traversera deras fullständiga dokumentobjektmodell, extrahera innehåll, och exportera till PDF, utan att kräva Microsoft Office eller någon proprietär runtime.

Installera den nu:

pip install aspose-note

För PDF‑export:

pip install "aspose-note[pdf]"

Vad är Aspose.Note FOSS för Python?

Aspose.Note FOSS for Python is a 100% free, MIT-licensed Python library that provides an Aspose.Note-shaped public API (aspose.note.*) för att läsa Microsoft OneNote .one filer. Den stöds av en inbyggd ren-Python MS-ONE/OneStore binärparser, utan COM-interoperabilitet, utan plattformsinbyggd DLL och utan krav på Microsoft Office-installation.

API-ytan är modellerad efter Aspose.Note for .NET, vilket gör övergången bekant för team som redan använder Aspose-produkter på andra plattformar.


Nyckelfunktioner

Läs Alla .one‑Filer

Läs in OneNote 2010-, OneNote Online- och OneNote 2007‑sektionfiler från en filsökväg eller någon binär ström:

from aspose.note import Document

doc = Document("MyNotes.one")
print(doc.DisplayName)   # Section name
print(len(list(doc)))       # Number of pages

Traversera hela dokument‑DOM‑en

Biblioteket exponerar en komplett dokumentobjektmodell: Document → Page → Outline → OutlineElement → RichText / Image / Table / AttachedFile. Använd GetChildNodes(Type) för rekursiva, typfiltrerade sökningar:

from aspose.note import Document, RichText

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

Extrahera Text med Rik Formatering

Varje RichText nod innehåller en lista med TextRun segment. Varje körning bär per-tecken TextStyle metadata: fetstil, kursiv, understruken, typsnittsnamn, teckenfärg, hyperlänkadress, och mer:

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}")

Spara bilder och bilagor

Hämta inbäddade bilder som råa byte med filnamn och dimensioner. Spara bifogade filer till 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)

Analysera tabeller

Gå igenom Table → TableRow → TableCell hierarkier och läs cellinnehåll:

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)

Exportera till PDF

Spara vilket laddat dokument som helst till PDF med den valfria ReportLab-backenden. Konfigurera sidintervall och rendering av taggikoner med PdfSaveOptions:

from aspose.note import Document, SaveFormat

doc = Document("MyNotes.one")
doc.Save("output.pdf", SaveFormat.Pdf)

Stödda innehållstyper

InnehållStöds
Sidor och sidtitlarJa
Vanlig text (RichText.Text)Ja
Formaterade körningar (fet, kursiv, understruken, teckensnitt, färg)Ja
Hyperlänkar i textkörningarJa
Inbäddade bilder (bytes, filnamn, dimensioner)Ja
Bifogade filer (bytes, filnamn)Ja
Tabeller (rader, celler, kolumnbredder)Ja
OneNote-taggar (NoteTag: form, etikett, färg)Ja
Numrerade och punktlistor (NumberList)Ja
Sidmetadata (författare, skapad tid, nivå)Ja
PDF-exportJa (ReportLab krävs)
Skriv tillbaka till .oneStöds inte
Krypterade dokumentStöds inte

Bekant API för .NET-utvecklare

Team som redan använder Aspose.Notering för .NET kommer att finna Python API:et omedelbart igenkännbart. Kärnklasser såsom Document, Page, RichText, Image, DocumentVisitor, och SaveFormat matchar .NET-ekvivalenterna i namn och beteende.

För scenarier som kräver full skrivstöd, konvertering till ytterligare format eller hantering av krypterade dokument, den kommersiella Aspose.Note for .NET och Aspose.Note for Java produkterna är tillgängliga.


Installationssammanfattning

KommandoSyfte
pip install aspose-noteKärnbibliotek (läser, traversering, DOM‑åtkomst)
pip install "aspose-note[pdf]"Kärna + PDF‑export (lägger till ReportLab)
pip install -e ".[pdf]"Redigerbar installation från källkod (bidragsgivare)

Krav: Python 3.10, 3.11 eller 3.12. Inget Microsoft Office krävs.


Kom igång