Aspose.Note FOSS for Python Is Now Available
Nos complace anunciar la disponibilidad de Aspose.Note FOSS for Python en PyPI. Esta biblioteca gratuita y de código abierto permite a los desarrolladores Python leer Microsoft OneNote .one archivos de sección, recorrer su modelo de objeto de documento completo, extraer contenido y exportar a PDF, sin requerir Microsoft Office ni ningún runtime propietario.
Instálalo ahora:
pip install aspose-note
Para exportar a PDF:
pip install "aspose-note[pdf]"
¿Qué es Aspose.Note FOSS para Python?
Aspose.Note FOSS for Python is a 100% free, MIT-licensed Python library that provides an Aspose.Note-shaped public API (aspose.note.*) para leer Microsoft OneNote .one archivos. Está respaldado por un analizador binario MS-ONE/OneStore puro-Python incorporado, sin interoperabilidad COM, sin DLL nativa de la plataforma y sin requerir la instalación de Microsoft Office.
La superficie de la API está modelada después de Aspose.Note for .NET, lo que hace que la transición sea familiar para los equipos que ya utilizan productos Aspose en otras plataformas.
Capacidades clave
Leer cualquier archivo .one
Cargue archivos de sección de OneNote 2010, OneNote Online y OneNote 2007 desde una ruta de archivo o cualquier flujo binario:
from aspose.note import Document
doc = Document("MyNotes.one")
print(doc.DisplayName) # Section name
print(len(list(doc))) # Number of pages
Recorrer el DOM completo del documento
La biblioteca expone un modelo de objeto de documento completo: Document → Page → Outline → OutlineElement → RichText / Image / Table / AttachedFile. Utilice GetChildNodes(Type) para búsquedas recursivas y filtradas por tipo:
from aspose.note import Document, RichText
doc = Document("MyNotes.one")
all_text = [rt.Text for rt in doc.GetChildNodes(RichText) if rt.Text]
Extraer texto con formato enriquecido
Cada RichText el nodo contiene una lista de TextRun segmentos. Cada run lleva metadatos por carácter TextStyle metadatos: negrita, cursiva, subrayado, nombre de fuente, color de fuente, dirección de hipervínculo y más:
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}")
Guardar imágenes y archivos adjuntos
Recuperar imágenes incrustadas como bytes sin procesar con nombre de archivo y dimensiones. Guardar archivos adjuntos en disco:
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)
Analizar tablas
Recorrer Table → TableRow → TableCell jerarquías y leer el contenido de la celda:
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)
Cómo hacerlo: Exportar a PDF
Guarda cualquier documento cargado en PDF usando el backend opcional ReportLab. Configura el rango de páginas y la renderización de íconos de etiquetas con PdfSaveOptions:
from aspose.note import Document, SaveFormat
doc = Document("MyNotes.one")
doc.Save("output.pdf", SaveFormat.Pdf)
Tipos de contenido compatibles
| Contenido | Soportado |
|---|---|
| Páginas y títulos de página | Sí |
Texto plano (RichText.Text) | Sí |
| Secuencias formateadas (negrita, cursiva, subrayado, fuente, color) | Sí |
| Hipervínculos en secuencias de texto | Sí |
| Imágenes incrustadas (bytes, nombre de archivo, dimensiones) | Sí |
| Archivos adjuntos (bytes, nombre de archivo) | Sí |
| Tablas (filas, celdas, anchos de columna) | Sí |
| Etiquetas de OneNote (NoteTag: shape, label, color) | Sí |
| Listas numeradas y con viñetas (NumberList) | Sí |
| Metadatos de página (author, creation time, level) | Sí |
| Exportación a PDF | Sí (se requiere ReportLab) |
Escribir de vuelta a .one | No compatible |
| Documentos cifrados | No compatible |
API familiar para desarrolladores de .NET
Los equipos que ya usan Aspose.Nota para .NET encontrará la API Python inmediatamente reconocible. Clases principales como Document, Page, RichText, Image, DocumentVisitor, y SaveFormat coinciden con los equivalentes de .NET en nombre y comportamiento.
Para escenarios que requieren soporte completo de escritura, conversión a formatos adicionales o manejo de documentos cifrados, el comercial Aspose.Note for .NET y Aspose.Note for Java productos están disponibles.
Resumen de instalación
| Comando | Propósito |
|---|---|
pip install aspose-note | Biblioteca central (lectura, recorrido, acceso DOM) |
pip install "aspose-note[pdf]" | Central + exportación PDF (añade ReportLab) |
pip install -e ".[pdf]" | Instalación editable desde el código fuente (colaboradores) |
Requisitos: Python 3.10, 3.11, o 3.12. No se requiere Microsoft Office.
Comenzar
- PyPI: https://pypi.org/project/aspose-note/
- Código fuente: https://github.com/aspose-note-foss/Aspose.Note-FOSS-for-Python
- Informar problemas: https://github.com/aspose-note-foss/Aspose.Note-FOSS-for-Python/issues
- Guía de inicio
- Guía del desarrollador
- Referencia de API
- Artículos de la base de conocimientos