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 stron | Tak |
Zwykły tekst (RichText.Text) | Tak |
| Sformatowane fragmenty (pogrubienie, kursywa, podkreślenie, czcionka, kolor) | Tak |
| Hiperłącza w fragmentach tekstu | Tak |
| 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 PDF | Tak (wymagany ReportLab) |
Zapisz z powrotem do .one | Nieobsługiwane |
| Zaszyfrowane dokumenty | Nieobsł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
| Polecenie | Cel |
|---|---|
pip install aspose-note | Biblioteka 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.