FOSS for Python è una libreria 100% gratuita con licenza MIT che consente di leggere i file Microsoft OneNote (.one) interamente da Python, senza bisogno di Microsoft Office, automatizzazione COM e runtime proprietario. Espone un’API pubblica pulita (aspose.note.*) modellata sulla conosciuta Aspose.Note per l’interfaccia .NET, supportata da un parser binario MS-ONE / OneStore scritto in puro Python.
Installazione da PyPI con pip install aspose-note (o pip install "aspose-note[pdf]" per abilitare l’esportazione PDF). Richiede Python 3.10 o successiva.
La libreria è adatta per script di automazione dei documenti, pipeline di indicizzazione del contenuto, strumenti di archiviazione e qualsiasi flusso di lavoro sul lato server che deve consumare il contenuti OneNote senza una dipendenza da Microsoft Office. Per la famiglia di prodotti aziendali, vedere Aspose.Note — Enterprise Product Family.
Document.Document → Page → Outline → OutlineElement → RichText / Image / Table / AttachedFile.RichText.Text o ispezionare i segmenti TextRun per trovare metadati grassetti, corsivi, caratteri, colori e collegamenti ipertestuali.Table → TableRow → TableCell; leggi larghezze di colonna tramite TableColumn.Width.NoteTag metadati (forma, etichetta, colore, stato di completamento) su testi, immagini e nodi di tabella..one.Document caricato in PDF utilizzando Document.Save(path, SaveFormat.Pdf). L’edizione FOSS utilizza un rendering predefinito; le opzioni avanzate per pagina di PDF non sono disponibili in questa versione.Image per recuperare byte grezzi (Bytes), nome del file ( FileName) e dimensioni ( OriginalWidth, OriginalHeight).AttachedFile per salvare gli allegato dei file incorporati al disco..one da un stream binario (ad esempio, io.BytesIO) senza scrivere sul disco.Aspose.Note FOSS si installa con un unico comando pip install aspose-note. Il pacchetto base non ha dipendenze opzionali; l’esportazione PDF richiede ReportLab, installato tramite pip install "aspose-note[pdf]".
Il API è modellato sul familiare Aspose.Note per l’interfaccia .NET: Document, Page, Outline, RichText, Image, Table, AttachedFile. La libreria è rilasciata sotto licenza MIT, open-source, e accetta segnalazioni di bug e contributi su GitHub.
Installa con pip, quindi passa un percorso di file a Document() per analizzare il formato binario OneNote. GetChildNodes(RichText) esegue una ricerca ricorsiva profonda e restituisce ogni nodo di testo nel documento, che è utile per l’indicizzazione del testo completo o le condotte di migrazione.
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)
L’esportazione PDF richiede la dipendenza opzionale ReportLab. Installa con pip install "aspose-note[pdf]". Lo stesso oggetto Document può essere iterato anche per i nodi Image per estrarre e salvare tutte le immagini incorporate sul disco in un solo passaggio.
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)
È una libreria Python gratuita con licenza MIT per la lettura di file Microsoft OneNote (.one) senza richiedere Microsoft Office, automazione COM o qualsiasi tempo d’esecuzione proprietario.
Varianti di formato OneNote 2010, OneNote Online e OneNot 2007. Può essere caricato qualsiasi file di sezione .one valido.
Eseguire pip install aspose-note per la libreria di base, o pip install "aspose-note[pdf]" per includere la dipendenza ReportLab opzionale per l’esportazione PDF.
Sì. Chiamare Document.Save(path, SaveFormat.Pdf). L’esportazione PDF richiede la dipendenza ReportLab opzionale installata tramite l’extra [pdf] .
Sì. La classe Document accetta un flusso binario (ad esempio, io.BytesIO o un corpo di risposta HTTP) in modo da poter elaborare file senza scrivere sul disco .
Python 3.10 o successiva è richiesta.
No. L’edizione corrente è solo lettura. Può aprire e analizzare qualsiasi file di sezioni .one valido, ma non è supportata la scrittura in formato binario OneNote.
No. Il caricamento di un file protetto da password .one genera una IncorrectPasswordException. I documenti crittografati non sono supportati nell’edizione corrente.
La libreria è concessa in licenza dal MIT e ospitata su GitHub. I report di bug e le richieste di pull sono benvenute.