Com començar amb FOSS per Python?
aspose-note Python és una biblioteca lliure, amb llicència MIT per a llegir i utilitzar. Conversió de Microsoft OneNote .one arxius a PDF no es requereix Microsoft Office, sense nativa extensions, pura Python de PyPI.
Guia pas a pas
Pas 1: Instal·lar el paquet
Instal·lar des de PyPI amb pip:
pip install aspose-note>=26.3.2Verifica que la instal·lació està carregada correctament:
from aspose.note import Document
print("aspose-note is ready.")Pas 2: Importació de classes requerides
Importeu els mòduls que necessiteu per carregar documents, recórrer nodes i guardar:
from aspose.note import Document, Page, Outline, RichText, SaveFormatPas 3: Carregar un fitxer d’ OneNote
Passar una ruta de fitxer a: Document per carregar qualsevol format de OneNote suportat. Utilitza el FileFormat propietat per comprovar quina variant es va detectar:
from aspose.note import Document
doc = Document("notebook.one")
print(f"Format : {doc.FileFormat}")
print(f"Pages : {len(list(doc))}")Pas 4: Repassar pàgines i llegir text
Utilització: GetChildNodes() per recuperar tots els Page nodes, després perforació fins a RichText fulla nodes per llegir el contingut real del text:
from aspose.note import Document, Page, RichText
doc = Document("notebook.one")
for page in doc.GetChildNodes(Page):
if page.Title and page.Title.TitleText:
print(f"Page: {page.Title.TitleText}")
for rt in page.GetChildNodes(RichText):
text = "".join(rt)
if text.strip():
print(f" {text[:120]}")Pas 5: Exportació a PDF
Document.Save() accepta SaveFormat.Pdf l’exportació es fa completament en procés sense cap rendedor extern:
import io
from aspose.note import Document, SaveFormat
doc = Document("notebook.one")
# Save to a file
doc.Save("output.pdf", SaveFormat.Pdf)
# Save to an in-memory buffer
buf = io.BytesIO()
doc.Save(buf, SaveFormat.Pdf)
print(f"PDF bytes: {len(buf.getvalue())}")Problemes i solucions comuns
ModuleNotFoundError: No module named 'aspose' El paquet no està instal·lat en l’entorn Python actiu. Run pip install aspose-note en el mateix entorn virtual que està utilitzant per executar el seu script. Confirma amb pip show aspose-note.
FileNotFoundError quan crida Document("path") La ruta que heu passat no existeix o utilitza el separador incorrecte. Utilitzar pathlib.Path a la construir camins de forma portàtil:
from pathlib import Path
from aspose.note import Document
doc = Document(str(Path("folder") / "notebook.one"))GetChildNodes() Retorna una llista buida Assegura’t que estàs trucant. GetChildNodes(Page) en el Document arrel no en un Page node quan s’espera que els fills del nivell de pàgina. Cada nivell d’arbre només retorna el seu propi descendents directes del tipus especificat.
La sortida de PDF és en blanc o manca contingut El reproductor de PDF llegeix RichText si el fitxer conté només imatges o arxius adjuntats. amb no RichText les pàgines PDF estaràn buides. Inspecta l’arbre de document per verificar que RichText els nodes estan presents i contenen text.
page.Title és None No totes les pàgines tenen un títol.: if page.Title and page.Title.TitleText: ... abans d’accedir al text del títol per evitar AttributeError.
Preguntas freqüents
Aspose-note requereix Microsoft Office?
No. La biblioteca llegeix el format binari de OneNote i exporta a PDF en forma nativa, amb Python pur sense dependre d’Microsoft Office, l’automatització COM o les API de Windows.
Quines versions de Python són compatibles?
Python 3.10 o posterior. El paquet s’executa en Windows, macOS, Linux, contenidors de Docker i funcions sense servidor.
La biblioteca és gratuïta per a ús comercial?
Sí. Es publica sota la llicència MIT. Pots utilitzar, modificar i redistribuir-la per a qualsevol propòsit, incloses les aplicacions comercials.
Puc escriure nous fitxers de OneNote des del zero?
Construir un document utilitzant el sistema de la base. Document(), afegir Page nodes via AppendChildLast(), adjuntar Outline i de la RichText els nens, i exportar a PDF amb Document.Save("output.pdf", SaveFormat.Pdf).Salvant de nou a .one format no està suportat.
Puc guardar en altres formats que no siguin PDF?
La versió actual 26.3.2 només suporta l’exportació a PDF. Salvar de nou a OneNote .one format o exportació a PNG, HTML o altres formats no està disponible en aquesta edició FOSS.