Aspose.Note FOSS for Python Is Now Available

Z przyjemnością ogłaszamy dostępność Aspose.Note FOSS for Python na PyPI. Ta darmowa, otwarto‑źródłowa biblioteka pozwala programistom Python czytać Microsoft OneNote .one pliki sekcji, przeglądać ich pełny model obiektowy dokumentu, wyodrębniać zawartość i eksportować do PDF, bez wymogu posiadania Microsoft Office ani żadnego własnościowego środowiska uruchomieniowego.

Zainstaluj ją teraz:

pip install aspose-note

Do eksportu PDF:

pip install "aspose-note[pdf]"

Czym jest Aspose.Note FOSS dla Python?

Aspose.Note FOSS for Python is a 100% free, MIT-licensed Python library that provides an Aspose.Note-shaped public API (aspose.note.*) do odczytu Microsoft OneNote .one plików. Jest oparty na wbudowanym czystym-Python parserze binarnym MS-ONE/OneStore, bez interakcji COM, bez natywnej biblioteki DLL platformy i bez wymogu instalacji Microsoft Office.

Interfejs API jest modelowany na podstawie Aspose.Note for .NET, co sprawia, że przejście jest znajome dla zespołów już korzystających z produktów Aspose na innych platformach.


Kluczowe możliwości

Odczytaj dowolny plik .one

Wczytaj sekcyjne pliki OneNote 2010, OneNote Online i OneNote 2007 z ścieżki pliku lub dowolnego strumienia binarnego:

from aspose.note import Document

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

Przeglądaj pełny DOM dokumentu

Biblioteka udostępnia kompletny model obiektowy dokumentu: Document → Page → Outline → OutlineElement → RichText / Image / Table / AttachedFile. Użyj GetChildNodes(Type) do rekurencyjnych, filtrowanych typowo wyszukiwań:

from aspose.note import Document, RichText

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

Wyodrębnij tekst z bogatym formatowaniem

Każdy RichText węzeł zawiera listę TextRun segmentów. Każdy ciąg posiada metadane per-znakowe TextStyle metadane: pogrubienie, kursywa, podkreślenie, nazwa czcionki, kolor czcionki, adres hiperłącza i inne:

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

Zapisz obrazy i załączniki

Pobierz osadzone obrazy jako surowe bajty wraz z nazwą pliku i wymiarami. Zapisz załączone pliki na dysku:

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)

Analizuj tabele

Przejdź Table → TableRow → TableCell hierarchie i odczytaj zawartość komórek:

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)

Eksportuj do PDF

Zapisz dowolny załadowany dokument jako PDF przy użyciu opcjonalnego backendu ReportLab. Skonfiguruj zakres stron oraz renderowanie ikon tagów za pomocą PdfSaveOptions:

from aspose.note import Document, SaveFormat

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

Obsługiwane typy treści

ZawartośćObsługiwane
Strony i tytuły stronTak
Zwykły tekst (RichText.Text)Tak
Sformatowane fragmenty (pogrubienie, kursywa, podkreślenie, czcionka, kolor)Tak
Hiperłącza w fragmentach tekstuTak
Osadzone obrazy (bajty, nazwa pliku, wymiary)Tak
Załączone pliki (bajty, nazwa pliku)Tak
Tabele (wiersze, komórki, szerokości kolumn)Tak
Tagi OneNote (NoteTag: kształt, etykieta, kolor)Tak
Listy numerowane i punktowane (NumberList)Tak
Metadane strony (autor, czas utworzenia, poziom)Tak
Eksport PDFTak (wymagany ReportLab)
Zapisz z powrotem do .oneNieobsługiwane
Zaszyfrowane dokumentyNieobsługiwane

Znane API dla programistów .NET

Zespoły już używające Aspose.Uwaga dla .NET znajdzie Python API od razu rozpoznawalne. Główne klasy, takie jak Document, Page, RichText, Image, DocumentVisitor, i SaveFormat odpowiadają .NET odpowiednikom pod względem nazwy i zachowania.

W scenariuszach wymagających pełnego wsparcia zapisu, konwersji do dodatkowych formatów lub obsługi zaszyfrowanych dokumentów, dostępny jest komercyjny Aspose.Note for .NET i Aspose.Note for Java produkty są dostępne.


Podsumowanie instalacji

PolecenieCel
pip install aspose-noteBiblioteka podstawowa (odczyt, przeglądanie, dostęp do DOM)
pip install "aspose-note[pdf]"Podstawowa + eksport PDF (dodaje ReportLab)
pip install -e ".[pdf]"Edytowalna instalacja ze źródła (współtwórcy)

Wymagania: Python 3.10, 3.11 lub 3.12. Microsoft Office nie jest wymagany.


Rozpocznij