1. Продукти
  2.   Aspose.Note
  3.   Aspose.Note FOSS for Python

Aspose.Note FOSS for Python

Четете, обхождате и експортирате файлове Microsoft OneNote (.one) от Python — безплатен и с отворен код, без нужда от Microsoft Office.

Python библиотека с отворен код за OneNote файлове

FOSS за Python е 100% безплатна библиотека с лиценз на MIT, която ви позволява да четете файлове Microsoft OneNote (.one) изцяло от Python, без Microsoft Office, COM автоматизация и не изисква собствено време. Тя разкрива чист публичен 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. За семейството продукти за предприятия вижте Aspose.Note — Enterprise Product Family.

Прочетете и преминавайте през OneNote документи

  • Зареждане на .one файлове: Отворете всеки раздел от OneNote от пътека за файл или двоичен поток чрез Document.
  • Пълни DOM преминаване: Навигация Document → Page → Outline → OutlineElement → RichText / Image / Table / AttachedFile.
  • ** Извличане на богат текст:** Четете суровия текст чрез RichText.Text или проверявайте сегментите TextRun за дебели, курсивни, шрифт, цвят и хипервръзки метаданните.
  • Таблица за анализиране: Преминаване Table → TableRow → TableCell йерархии; четене на широчини колони чрез TableColumn.Width.
  • Инспекция на етикетите: Прочетете NoteTag метаданните (форма, етикет, цвят, състояние на завършване) за текстови, изображения и таблични възли.

Къде Aspose.Note FOSS може да се използва

  • Индексиране на съдържанието: Извличане и индексирането на целия текст от архивите на OneNote за тръбопроводите за търсене.
  • Миграция на документи: Изнасяне на раздели от OneNote в PDF, обикновен текст или структурирани данни.
  • ** Архивни инструменти:** Съхраняване на вградени изображения и приложения към диск от файлове .one.
  • Работни потоци за CI/CD: Одобрение или обработка на съдържание от OneNote в контейнери на Docker.
  • Пиплайни на базата от знания: Извличане на структурирано съдържание от тематичните бележници на екипа OneNote.

Износ, изображения и приложения

  • PDF експорт: Запазете всяко заредено Document в PDF с помощта на Document.Save(path, SaveFormat.Pdf). Изданието FOSS използва по подразбиране рендеринг; напреднали опции за PDF на страница не са налични в това издание.
  • Идеален експорт: Итерации Image възли за извличане на сурови байтове (Bytes), име на файла ( FileName) и размери ( OriginalWidth, OriginalHeight).
  • Спасяване на приложения: Итерация 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, с отворен код и приема доклади за грешки и приноси в GitHub.

Зареждане на файл от OneNote и извличане на целия текст

Инсталирайте с pip, след това прехвърлете файлов път към Document() за анализиране на бинарния формат на OneNote. GetChildNodes(RichText) извършва дълбоко рекурсивно търсене и връща всеки текстов възел в документа, което е полезно за индексиране или миграция на пълен текст.

pip install aspose-note
from aspose.note import Document, RichText
doc = Document("notebook.one")
print(f"Pages: {len(list(doc))}")
# Extract all text across the entire document
texts = [rt.Text for rt in doc.GetChildNodes(RichText) if rt.Text]
for text in texts:
   print(text)

Износ на PDF и съхранение на приложеното изображение

Износът на PDF изисква изборната зависимост ReportLab. Инсталирайте я с pip install "aspose-note[pdf]". Същият обект Document може да бъде итерационен за възли Image, които извличат и записват всички вградени образи на диск в една проходка.

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

doc = Document("notebook.one")

# Export the document to PDF (requires aspose-note[pdf])
doc.Save("output.pdf", SaveFormat.Pdf)

# Save all embedded images to disk
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)

Frequently Asked Questions

Какво е Aspose.Note FOSS за Python?

Това е безплатна библиотека на Python с лиценз от MIT за четене на файлове Microsoft OneNote (.one), без да се изисква автоматизация на Microsoft Office, COM или друго собствено време.

Кои варианти на формат на OneNote са поддържани?

Формат на OneNote 2010, OneNote Online и OneNOte 2007. Всеки валиден файл .one може да бъде заредил.

Как да го инсталирам?

Изпълнете pip install aspose-note за базовата библиотека или pip install "aspose-note[pdf]", за да включите допълнителната зависимост ReportLab за износ на PDF.

Мога ли да експортирам файлове от OneNote в PDF?

Да. Използвайте Document.Save(path, SaveFormat.Pdf). PDF експортът изисква инсталирането на допълнителната зависимост ReportLab чрез [pdf] .

Мога ли да качвам .one файлове от потока?

Да. Класата Document приема двоичен поток (например, io.BytesIO или HTTP отговорно тяло), така че можете да обработвате файлове без писане на диск.

Каква версия на Python е необходима?

Python 3.10 или по-нови е необходимо.

Мога ли да напиша или модифицирам .one файл?

Не. Текущото издание е само за четене. Може да отвори и анализира всеки валиден файл с секция .one, но не се поддържа връщане към бинарния формат на OneNote.

Поддържани ли са криптирани OneNote документи?

Не. Зареждане на защитен с парола файл .one създава IncorrectPasswordException . Шифрованите документи не се поддържат в текущото издание.

Къде мога да намеря изходния код?

Библиотеката е лицензирана от MIT и се хоства на GitHub.

  

Ресурси за поддръжка и обучение

 Български