简介
本指南可帮助您在几分钟内从 pip install 生成可运行的脚本。aspose-note 是一个免费、采用 MIT 许可证的库,可在 Python 中完整读取和保存 Microsoft OneNote 文件,无需依赖 Microsoft Office、COM 自动化或任何本机扩展。
pip install aspose-note-foss什么是用于 Python 的 Aspose.Note FOSS?
OneNote 的 .one 格式是专有的二进制容器——在没有 Microsoft 自有库的情况下解析它,传统上需要逆向工程工具或 Windows 专用的 COM 桥接。Aspose.Note FOSS 提供了纯 Python 实现,可读取该格式并在任何支持 Python 3.10 或更高版本的平台上导出为 PDF。
该库公开了文档对象模型:一个包含 Page 节点的 Document 根节点,每个节点可能包含 Title、Outline、RichText、Image 和 AttachedFile 子节点。您可以使用 GetChildNodes() 遍历树结构,并使用 Document.Save() 将结果导出为 PDF。欲了解完整功能演示——包括从零构建笔记本——请参阅 Introducing Aspose.Note FOSS for Python。
快速入门
以下是完整的工作流程,分为五行——加载一个 .one 文件并直接保存为 PDF:
from aspose.note import Document, SaveFormat
# Load a .one file
doc = Document("notebook.one")
print(f"Format: {doc.FileFormat}")
# Save to PDF
doc.Save("notebook.pdf", SaveFormat.Pdf)
print("Saved notebook.pdf")
读取页面和文本
页面是位于 Document 中的 Page 节点。每个 Page 都具有 Title 属性,并且可以包含带有 RichText 内容的 Outline 元素。使用 GetChildNodes() 来遍历树:
from aspose.note import Document, Page, RichText
doc = Document("notebook.one")
for page in doc.GetChildNodes(Page):
title = page.Title
if title and title.TitleText:
print(f"Page: {title.TitleText}")
for rt in page.GetChildNodes(RichText):
text = "".join(rt)
if text.strip():
print(f" Text: {text[:80]}")
如需更深入了解读取文本、图像、附件和表格,请参阅 Reading OneNote .one Files in Python with Aspose.Note FOSS。
保存为 PDF
一旦加载了 Document,将其转换为 PDF 只需一次调用:传入文件路径和 SaveFormat.Pdf 给 Document.Save(),库将在进程内渲染笔记本为 PDF:
from aspose.note import Document, SaveFormat
doc = Document("notebook.one")
doc.Save("output.pdf", SaveFormat.Pdf)
关于内存缓冲区输出、批量转换以及仅导出限制,请参阅 Exporting OneNote Files to PDF in Python。
支持的格式
| 格式 | 扩展名 | 读取 | 写入 |
|---|---|---|---|
| OneNote 2010 | .one | ✓ | — |
| OneNote 2007 | .one | ✓ | — |
| OneNote 在线 | .one | ✓ | — |
.pdf | — | ✓ |
开源与许可
Aspose.Note FOSS for Python 在 MIT 许可证下发布。该软件包已在 PyPI 上以 aspose-note 的形式发布,且在 MIT 条款下允许商业使用、修改和再分发。