Aspose.Note FOSS for Python Is Now Available
Temos o prazer de anunciar a disponibilidade de Aspose.Note FOSS for Python no PyPI. Esta biblioteca gratuita e de código aberto permite que desenvolvedores Python leiam Microsoft OneNote .one arquivos de seção, percorram seu modelo de objeto de documento completo, extraiam conteúdo e exportem para PDF, sem exigir Microsoft Office ou qualquer runtime proprietário.
Instale agora:
pip install aspose-note
Para exportação em PDF:
pip install "aspose-note[pdf]"
O que é Aspose.Note FOSS for 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 leitura de Microsoft OneNote .one arquivos. É suportado por um analisador binário MS-ONE/OneStore puro-Python incorporado, sem interop COM, sem DLL nativa da plataforma e sem necessidade de instalação do Microsoft Office.
A superfície da API é modelada após Aspose.Note for .NET, tornando a transição familiar para equipes que já utilizam produtos Aspose em outras plataformas.
Principais Capacidades
Leia qualquer arquivo .one
Carregue arquivos de seção do OneNote 2010, OneNote Online e OneNote 2007 a partir de um caminho de arquivo ou de qualquer fluxo binário:
from aspose.note import Document
doc = Document("MyNotes.one")
print(doc.DisplayName) # Section name
print(len(list(doc))) # Number of pages
Percorra o DOM completo do documento
A biblioteca expõe um modelo de objeto de documento completo: Document → Page → Outline → OutlineElement → RichText / Image / Table / AttachedFile. Use GetChildNodes(Type) para buscas recursivas, 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]
Extraia texto com formatação rica
Cada RichText nó contém uma lista de TextRun segmentos. Cada execução carrega metadados por caractere TextStyle metadados: negrito, itálico, sublinhado, nome da fonte, cor da fonte, endereço de hyperlink e mais:
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}")
Salvar Imagens e Anexos
Recuperar imagens incorporadas como bytes brutos com nome de arquivo e dimensões. Salvar arquivos anexados no 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)
Analisar Tabelas
Percorrer Table → TableRow → TableCell hierarquias e ler o conteúdo da célula:
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)
Exportar para PDF
Salve qualquer documento carregado em PDF usando o backend opcional ReportLab. Configure o intervalo de páginas e a renderização de ícones de tags com PdfSaveOptions:
from aspose.note import Document, SaveFormat
doc = Document("MyNotes.one")
doc.Save("output.pdf", SaveFormat.Pdf)
Tipos de Conteúdo Suportados
| Conteúdo | Suportado |
|---|---|
| Páginas e títulos de página | Sim |
Texto simples (RichText.Text) | Sim |
| Execuções formatadas (negrito, itálico, sublinhado, fonte, cor) | Sim |
| Hiperlinks em execuções de texto | Sim |
| Imagens incorporadas (bytes, nome do arquivo, dimensões) | Sim |
| Arquivos anexados (bytes, nome do arquivo) | Sim |
| Tabelas (linhas, células, larguras das colunas) | Sim |
| Etiquetas do OneNote (NoteTag: shape, label, color) | Sim |
| Listas numeradas e com marcadores (NumberList) | Sim |
| Metadados da página (author, creation time, level) | Sim |
| Exportação de PDF | Sim (ReportLab required) |
Escrever de volta para .one | Não suportado |
| Documentos criptografados | Não suportado |
API Familiar para Desenvolvedores .NET
Equipes já usando Aspose.Note para .NET encontrará a API Python imediatamente reconhecível. Classes principais como Document, Page, RichText, Image, DocumentVisitor, e SaveFormat correspondem aos equivalentes .NET em nome e comportamento.
Para cenários que exigem suporte total de gravação, conversão para formatos adicionais ou manipulação de documentos criptografados, o comercial Aspose.Note for .NET e Aspose.Note for Java produtos estão disponíveis.
Resumo da Instalação
| Comando | Propósito |
|---|---|
pip install aspose-note | Biblioteca central (leitura, travessia, acesso ao DOM) |
pip install "aspose-note[pdf]" | Central + exportação PDF (adiciona ReportLab) |
pip install -e ".[pdf]" | Instalação editável a partir do código-fonte (contribuidores) |
Requisitos: Python 3.10, 3.11 ou 3.12. Não é necessário o Microsoft Office.