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

Aspose.Note FOSS för Python

Läs, traversera och exportera Microsoft OneNote (.one)-filer från Python — gratis och öppen källkod, ingen Microsoft Office krävs.

Öppen källkod Python bibliotek för OneNote-filer

Aspose.Note FOSS för Python är ett 100 % fritt, MIT-licensierat bibliotek som låter dig läsa Microsoft OneNote (.one)-filer helt från Python, utan Microsoft Office, utan COM‑automatisering och utan proprietär runtime. Det exponerar ett rent offentligt API (aspose.note.*) modellerat efter det välbekanta Aspose.Note för .NET-gränssnittet, med en inbyggd MS-ONE/OneStore-binärparser skriven i ren Python.

Installera från PyPI med pip install aspose-note (eller pip install "aspose-note[pdf]" för att aktivera PDF‑export). Kräver Python 3.10 eller senare.

Biblioteket är lämpligt för dokumentautomatiseringsskript, innehållsindexeringspipelines, arkiveringsverktyg och alla server‑sidiga arbetsflöden som behöver konsumera OneNote‑innehåll utan ett Microsoft Office‑beroende.

Läs och traversera OneNote-dokument

  • Läs .one‑filer: Öppna vilken OneNote‑sektion som helst från en filsökväg eller binärström via Document.
  • Full DOM‑traversering: Navigera Document → Page → Outline → OutlineElement → RichText / Image / Table / AttachedFile.
  • Extrahering av rik text: Läs rå text via RichText.Text eller inspektera TextRun‑segment för fetstil, kursiv, teckensnitt, färg och hyperlänk‑metadata.
  • Tabellparsning: Traversera Table → TableRow → TableCell‑hierarkier med kolumnbredder och kantlinjens synlighet.
  • Tagg‑inspektion: Läs NoteTag‑metadata (form, etikett, färg, slutförandestatus) på text-, bild- och tabellnoder.

Var Aspose.Note FOSS kan användas

  • Innehållsindexering: Extrahera och indexera all text från OneNote‑arkiv för sök‑pipelines.
  • Dokumentmigration: Konvertera OneNote‑sektioner till PDF, vanlig text eller strukturerad data.
  • Arkiveringsverktyg: Spara inbäddade bilder och bilagor till disk från .one‑filer.
  • CI/CD-flöden: Validera eller bearbeta OneNote-innehåll i Docker-containrar.
  • Kunskapsbas-pipelines: Extrahera strukturerat innehåll från teamets OneNote-anteckningsböcker.

Export, bilder och bilagor

  • PDF-export: Spara vilket laddat Document som helst till PDF med Document.Save(path, SaveFormat.Pdf).
  • PDF-alternativ: Anpassa sidintervall, taggikonkatalog, ikonstorlek och avstånd via PdfSaveOptions.
  • Bildexport: Iterera Image-noder för att hämta råa byte, filnamn, dimensioner och alt‑text.
  • Bilagorsparning: Iterera AttachedFile-noder för att spara inbäddade filbilagor till disk.
  • Ström‑baserad inläsning: Öppna .one‑filer från en binär ström (t.ex. io.BytesIO) utan att skriva till disk.

Utvecklarupplevelse

Aspose.Note FOSS-installationer med ett enda pip install aspose-note-kommando. Baspaketet har inga valfria beroenden; PDF-export kräver ReportLab, som installeras via pip install "aspose-note[pdf]".

API:et är modellerat efter det välbekanta Aspose.Note för .NET-gränssnittet: Document, Page, Outline, RichText, Image, Table, AttachedFile. Biblioteket är MIT-licensierat, öppen källkod, och tar emot felrapporter och bidrag på GitHub.

Läs in en OneNote-fil och extrahera all text

Installera med pip, och skicka sedan en filsökväg till Document() för att tolka OneNote:s binära format. GetChildNodes(RichText) utför en djup rekursiv sökning och returnerar varje textnod i dokumentet, vilket är användbart för fulltextsökning eller migrationspipelines.

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

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

# Extrahera all text i hela dokumentet
texts = [rt.Text for rt in doc.GetChildNodes(RichText) if rt.Text]
for text in texts:
    print(text)

Exportera till PDF och spara bifogade bilder

PDF-export kräver det valfria ReportLab‑beroendet. Installera det med pip install "aspose-note[pdf]". Samma Document‑objekt kan också itereras för Image‑noder för att extrahera och spara alla inbäddade bilder till disk i ett enda pass.

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

doc = Document("notebook.one")

# Exportera dokumentet till PDF (kräver aspose-note[pdf])
doc.Save("output.pdf", SaveFormat.Pdf)

# Spara alla inbäddade bilder till 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)

Vanliga Frågor

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

Det är ett gratis, MIT-licensierat Python-bibliotek för att läsa Microsoft OneNote (.one)-filer utan att kräva Microsoft Office, COM-automatisering eller någon proprietär runtime.

Vilka OneNote-formatvarianter stöds?

OneNote 2010, OneNote Online och OneNote 2007-formatvarianter. Alla giltiga .one-sektionsfiler kan laddas.

Hur installerar jag det?

Kör pip install aspose-note för basbiblioteket, eller pip install "aspose-note[pdf]" för att inkludera det valfria ReportLab‑beroendet för PDF‑export.

Kan jag exportera OneNote-filer till PDF?

Ja. Anropa Document.Save(path, SaveFormat.Pdf). PDF‑export kräver att det valfria ReportLab‑beroendet är installerat via [pdf]‑extra.

Kan jag läsa in .one-filer från en ström?

Ja. Document‑klassen accepterar en binär ström (t.ex. io.BytesIO eller en HTTP‑svarsbody) så att du kan bearbeta filer utan att skriva till disk.

Vilken Python-version krävs?

Python 3.10 eller senare krävs.

Kan jag skriva eller ändra en .one-fil?

Nej. Den aktuella utgåvan är skrivskyddad. Den kan öppna och tolka vilken giltig .one‑sektionfil som helst, men att skriva tillbaka till OneNote‑binärformatet stöds inte.

Stöds krypterade OneNote-dokument?

Nej. Inläsning av en lösenordsskyddad .one‑fil kastar ett IncorrectPasswordException. Krypterade dokument stöds inte i den aktuella utgåvan.

Var kan jag hitta källkoden?

Biblioteket är licensierat under MIT och finns på GitHub. Felrapporter och pull‑requests är välkomna.

  

Stöd och Lärande Resurser

 Svenska