Aspose.Note FOSS для Python — это полностью бесплатная библиотека с лицензией MIT, позволяющая читать файлы Microsoft OneNote (.one) полностью из Python, без Microsoft Office, без автоматизации COM и без проприетарного runtime. Она предоставляет чистый публичный API (aspose.note.*), построенный по знакомому интерфейсу Aspose.Note для .NET, поддерживаемый встроенным бинарным парсером MS-ONE/OneStore, написанным на чистом Python.
Установите из PyPI с помощью pip install aspose-note (или pip install "aspose-note[pdf]" для включения экспорта в PDF). Требуется Python 3.10 или новее.
Библиотека подходит для скриптов автоматизации документов, конвейеров индексации контента, архивных инструментов и любых серверных рабочих процессов, которым необходимо обрабатывать содержимое OneNote без зависимости от Microsoft Office.
Document.Document → Page → Outline → OutlineElement → RichText / Image / Table / AttachedFile.RichText.Text или исследуйте сегменты TextRun для получения информации о жирном, курсиве, шрифте, цвете и гиперссылках.Table → TableRow → TableCell с указанием ширины столбцов и видимости границ.NoteTag (форма, метка, цвет, состояние выполнения) у узлов текста, изображения и таблицы..one.Document в PDF, используя Document.Save(path, SaveFormat.Pdf).PdfSaveOptions.Image, чтобы получить необработанные байты, имя файла, размеры и альтернативный текст.AttachedFile, чтобы сохранить вложенные файлы на диск..one из бинарного потока (например, io.BytesIO) без записи на диск.Aspose.Note FOSS устанавливается одной командой pip install aspose-note. Базовый пакет не имеет необязательных зависимостей; экспорт в PDF требует ReportLab, устанавливается через pip install "aspose-note[pdf]".
API построен по знакомому Aspose.Note для интерфейса .NET: Document, Page, Outline, RichText, Image, Table, AttachedFile. Библиотека лицензирована по MIT, является open-source и принимает сообщения об ошибках и вклады на GitHub.
Установите с помощью pip, затем передайте путь к файлу в Document(), чтобы разобрать двоичный формат OneNote. GetChildNodes(RichText) выполняет глубокий рекурсивный поиск и возвращает каждый текстовый узел в документе, что полезно для полнотекстового индексирования или миграционных конвейеров.
pip install aspose-note
from aspose.note import Document, RichText
doc = Document("notebook.one")
print(f"Страницы: {len(list(doc))}")
# Извлечь весь текст из всего документа
texts = [rt.Text for rt in doc.GetChildNodes(RichText) if rt.Text]
for text in texts:
print(text)
PDF экспорт требует опциональной зависимости ReportLab. Установите её с помощью pip install "aspose-note[pdf]". Тот же объект Document также можно итерировать по узлам Image, чтобы извлечь и сохранить все встроенные изображения на диск за один проход.
from aspose.note import Document, SaveFormat, Image
import pathlib
doc = Document("notebook.one")
# Экспортировать документ в PDF (требуется aspose-note[pdf])
doc.Save("output.pdf", SaveFormat.Pdf)
# Сохранить все встроенные изображения на диск
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)
Это бесплатная библиотека Python с лицензией MIT для чтения файлов Microsoft OneNote (.one) без необходимости установки Microsoft Office, COM‑автоматизации или какого‑либо проприетарного runtime.
Варианты форматов OneNote 2010, OneNote Online и OneNote 2007. Любой корректный файл раздела .one может быть загружен.
Выполните pip install aspose-note для базовой библиотеки или pip install "aspose-note[pdf]" чтобы добавить необязательную зависимость ReportLab для экспорта в PDF.
Да. Вызовите Document.Save(path, SaveFormat.Pdf). Для экспорта в PDF требуется установленная необязательная зависимость ReportLab через дополнительный пакет [pdf].
Да. Класс Document принимает бинарный поток (например, io.BytesIO или тело HTTP‑ответа), поэтому вы можете обрабатывать файлы без записи их на диск.
Требуется Python версии 3.10 или новее.
Нет. Текущий выпуск доступен только для чтения. Он может открывать и разбирать любой действительный файл раздела .one, но запись обратно в двоичный формат OneNote не поддерживается.
Нет. Загрузка защищённого паролем файла .one вызывает IncorrectPasswordException. Шифрованные документы не поддерживаются в текущем выпуске.
Библиотека лицензирована по MIT и размещена на GitHub. Сообщения об ошибках и запросы на включение изменений приветствуются.