1. Produtos
  2.   Aspose.Note
  3.   Aspose.Note FOSS for Python

Aspose.Note FOSS para Python

Leia, percorra e exporte arquivos Microsoft OneNote (.one) a partir de Python — gratuito e de código aberto, sem necessidade de Microsoft Office.

Biblioteca Python de código aberto para arquivos OneNote

Aspose.Note FOSS para Python é uma biblioteca 100% gratuita, licenciada sob MIT, que permite ler arquivos Microsoft OneNote (.one) totalmente a partir de Python, sem Microsoft Office, sem automação COM e sem necessidade de runtime proprietário. Ela expõe uma API pública limpa (aspose.note.*) modelada na familiar interface Aspose.Note para .NET, suportada por um analisador binário MS-ONE/OneStore embutido escrito em puro Python.

Instale a partir do PyPI com pip install aspose-note (ou pip install "aspose-note[pdf]" para habilitar a exportação PDF). Requer Python 3.10 ou superior.

A biblioteca é adequada para scripts de automação de documentos, pipelines de indexação de conteúdo, ferramentas de arquivamento e qualquer fluxo de trabalho server-side que precise consumir conteúdo do OneNote sem depender do Microsoft Office.

Leia e percorra documentos OneNote

  • Carregar arquivos .one: Abra qualquer seção do OneNote a partir de um caminho de arquivo ou fluxo binário via Document.
  • Percurso completo do DOM: Navegue Document → Page → Outline → OutlineElement → RichText / Image / Table / AttachedFile.
  • Extração de texto rico: Leia o texto bruto via RichText.Text ou inspecione segmentos TextRun para negrito, itálico, fonte, cor e metadados de hyperlink.
  • Análise de tabelas: Percorra hierarquias Table → TableRow → TableCell com larguras de coluna e visibilidade de bordas.
  • Inspeção de tags: Leia os metadados NoteTag (forma, rótulo, cor, estado de conclusão) em nós de texto, imagem e tabela.

Onde Aspose.Note FOSS pode ser usado

  • Indexação de conteúdo: Extraia e indexe todo o texto dos arquivos OneNote para pipelines de busca.
  • Migração de documentos: Converta seções do OneNote para PDF, texto simples ou dados estruturados.
  • Ferramentas de arquivamento: Salve imagens incorporadas e anexos no disco a partir de arquivos .one.
  • Fluxos de trabalho CI/CD: Validar ou processar conteúdo do OneNote dentro de contêineres Docker.
  • Pipelines de base de conhecimento: Extrair conteúdo estruturado dos blocos de notas OneNote da equipe.

Exportar, imagens e anexos

  • Exportação de PDF: Salve qualquer Document carregado em PDF usando Document.Save(path, SaveFormat.Pdf).
  • Opções de PDF: Personalize o intervalo de páginas, o diretório de ícones de tags, o tamanho do ícone e o espaçamento via PdfSaveOptions.
  • Exportação de imagem: Percorra os nós Image para obter os bytes brutos, o nome do arquivo, as dimensões e o texto alternativo.
  • Salvamento de anexos: Percorra os nós AttachedFile para salvar os anexos de arquivos incorporados no disco.
  • Carregamento baseado em stream: Abra arquivos .one a partir de um fluxo binário (por exemplo, io.BytesIO) sem gravar no disco.

Experiência do desenvolvedor

Aspose.Note FOSS instala com um único comando pip install aspose-note. O pacote base não tem dependências opcionais; a exportação para PDF requer ReportLab, instalado via pip install "aspose-note[pdf]".

A API é modelada com base na familiar interface Aspose.Note para .NET: Document, Page, Outline, RichText, Image, Table, AttachedFile. A biblioteca tem licença MIT, é de código aberto e aceita relatórios de bugs e contribuições no GitHub.

Carregar um arquivo OneNote e extrair todo o texto

Instale com pip, depois passe um caminho de arquivo para Document() para analisar o formato binário do OneNote. GetChildNodes(RichText) realiza uma busca recursiva profunda e retorna todos os nós de texto no documento, o que é útil para indexação de texto completo ou pipelines de migração.

pip install aspose-note
from aspose.note import Document, RichText

doc = Document("notebook.one")
print(f"Páginas: {len(list(doc))}")

# Extrair todo o texto de todo o documento
texts = [rt.Text for rt in doc.GetChildNodes(RichText) if rt.Text]
for text in texts:
    print(text)

Exportar para PDF e salvar imagens anexas

A exportação para PDF requer a dependência opcional ReportLab. Instale-a com pip install "aspose-note[pdf]". O mesmo objeto Document também pode ser iterado para nós Image a fim de extrair e salvar todas as imagens incorporadas no disco em uma única passagem.

from aspose.note import Document, SaveFormat, Image
import pathlib

doc = Document("notebook.one")

# Exporta o documento para PDF (requer aspose-note[pdf])
doc.Save("output.pdf", SaveFormat.Pdf)

# Salve todas as imagens incorporadas no disco
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)

Perguntas Frequentes

O que é Aspose.Note FOSS para Python?

É uma biblioteca Python gratuita, licenciada sob MIT, para leitura de arquivos Microsoft OneNote (.one) sem exigir Microsoft Office, automação COM ou qualquer runtime proprietário.

Quais variantes de formato OneNote são suportadas?

Variantes de formato OneNote 2010, OneNote Online e OneNote 2007. Qualquer arquivo de seção .one válido pode ser carregado.

Como faço para instalá‑lo?

Execute pip install aspose-note para a biblioteca base, ou pip install "aspose-note[pdf]" para incluir a dependência opcional ReportLab para exportação em PDF.

Posso exportar arquivos OneNote para PDF?

Sim. Chame Document.Save(path, SaveFormat.Pdf). A exportação para PDF requer a dependência opcional ReportLab instalada via o extra [pdf].

Posso carregar arquivos .one a partir de um stream?

Sim. A classe Document aceita um fluxo binário (por exemplo, io.BytesIO ou o corpo de uma resposta HTTP), permitindo processar arquivos sem gravá‑los no disco.

Qual versão do Python é necessária?

Python 3.10 ou superior é necessário.

Posso escrever ou modificar um arquivo .one?

Não. A edição atual é somente leitura. Ela pode abrir e analisar qualquer arquivo de seção .one válido, mas gravar de volta no formato binário do OneNote não é suportado.

Documentos OneNote criptografados são suportados?

Não. Carregar um arquivo .one protegido por senha gera uma IncorrectPasswordException. Documentos criptografados não são suportados na edição atual.

Onde posso encontrar o código-fonte?

A biblioteca tem licença MIT e está hospedada no GitHub. Relatórios de bugs e pull requests são bem‑vindos.

  

Recursos de Suporte e Aprendizado

 Português