Com començar amb FOSS per Python?

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.2

Verifica 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, SaveFormat

Pas 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.

Veure també

 Català