Aspose.Note FOSS for Python Is Now Available

خوشحالیم که اعلام کنیم در دسترس است Aspose.Note FOSS for Python در PyPI. این کتابخانهٔ رایگان و متن‌باز به توسعه‌دهندگان Python امکان می‌دهد Microsoft OneNote .one فایل‌های بخش را مرور کنند، مدل شیء کامل سند را پیمایش کنند، محتوا را استخراج کنند و به PDF صادر کنند، بدون نیاز به Microsoft Office یا هر زمان‌اجرای مالکیتی.

هم‌اکنون نصب کنید:

pip install aspose-note

برای خروجی PDF:

pip install "aspose-note[pdf]"

Aspose.Note FOSS برای Python چیست؟?

Aspose.Note FOSS for Python is a 100% free, MIT-licensed Python library that provides an Aspose.Note-shaped public API (aspose.note.*) برای خواندن Microsoft OneNote .one فایل‌ها. این کتابخانه توسط یک تجزیه‌گر باینری خالص-Python MS-ONE/OneStore داخلی پشتیبانی می‌شود، بدون تعامل COM، بدون DLL بومی پلتفرم، و بدون نیاز به نصب Microsoft Office.

سطح API بر پایهٔ Aspose.Note for .NET,، که انتقال را برای تیم‌هایی که قبلاً از محصولات Aspose در پلتفرم‌های دیگر استفاده می‌کنند، آشنا می‌کند.


قابلیت‌های کلیدی

خواندن هر فایل .one

بارگذاری فایل‌های بخش OneNote 2010، OneNote Online و OneNote 2007 از مسیر فایل یا هر جریان باینری:

from aspose.note import Document

doc = Document("MyNotes.one")

مرور کامل DOM سند

این کتابخانه یک مدل شیء کامل سند را ارائه می‌دهد: Document → Page → Outline → OutlineElement → RichText / Image / Table / AttachedFile. استفاده کنید GetChildNodes(Type) برای جستجوهای بازگشتی و فیلتر شده بر اساس نوع:

from aspose.note import Document, RichText

doc = Document("MyNotes.one")
all_text = [rt.Text for rt in doc.GetChildNodes(RichText) if rt.Text]

استخراج متن با قالب‌بندی غنی

هر RichText گره شامل فهرستی از TextRun بخش‌ها. هر اجرا ویژگی‌های مربوط به هر کاراکتر را حمل می‌کند TextStyle متادیتا: bold, italic, underline, نام قلم، رنگ قلم، آدرس پیوند، و موارد دیگر:

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}")

ذخیره تصاویر و پیوست‌ها

دریافت تصاویر جاسازی‌شده به‌صورت بایت‌های خام همراه با نام فایل و ابعاد. ذخیره فایل‌های پیوست‌شده بر روی دیسک:

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)

تجزیه جداول

پیمایش Table → TableRow → TableCell سلسله‌مراتب و محتوای سلول را بخوانید:

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)

نحوه صادرات به PDF

هر سند بارگذاری‌شده‌ای را با استفاده از بک‌اند اختیاری ReportLab به PDF ذخیره کنید. محدوده صفحات و رندر آیکون برچسب را با PdfSaveOptions:

from aspose.note import Document, SaveFormat

doc = Document("MyNotes.one")
doc.Save("output.pdf", SaveFormat.Pdf)

انواع محتواهای پشتیبانی‌شده

محتواپشتیبانی‌شده
صفحات و عناوین صفحهبله
متن ساده (RichText.Text)بله
متن‌های قالب‌بندی‌شده (پررنگ، ایتالیک، زیرخط، قلم، رنگ)بله
پیوندهای ابرمتنی در متنبله
تصاویر جاسازی‌شده (بایت‌ها، نام فایل، ابعاد)بله
فایل‌های پیوست‌شده (بایت‌ها، نام فایل)بله
جداول (سطرها، سلول‌ها، عرض ستون‌ها)بله
برچسب‌های OneNote (NoteTag: شکل، برچسب، رنگ)بله
فهرست‌های شماره‌دار و بولت‌دار (NumberList)بله
فراداده صفحه (نویسنده، زمان ایجاد، سطح)بله
خروجی PDFبله (ReportLab مورد نیاز است)
بازنویسی به .oneپشتیبانی نمی‌شود
اسناد رمزگذاری‌شدهپشتیبانی نمی‌شود

API آشنا برای .NET توسعه‌دهندگان

تیم‌ها قبلاً از Aspose استفاده می‌کنند. توجه برای .NET، API Python را بلافاصله قابل تشخیص می‌یابد. کلاس‌های اصلی مانند Document, Page, RichText, Image, DocumentVisitor, و SaveFormat با معادل‌های .NET از نظر نام و رفتار مطابقت دارند.

برای سناریوهایی که نیاز به پشتیبانی کامل نوشتن، تبدیل به فرمت‌های اضافی، یا مدیریت اسناد رمزگذاری‌شده دارند، نسخه تجاری Aspose.Note for .NET و Aspose.Note for Java محصولات در دسترس هستند.


خلاصه نصب

دستورهدف
pip install aspose-noteکتابخانهٔ هسته (خواندن، پیمایش، دسترسی به DOM)
pip install "aspose-note[pdf]"هسته + خروجی PDF (ReportLab اضافه می‌شود)
pip install -e ".[pdf]"نصب قابل ویرایش از منبع (مشارکت‌کنندگان)

پیش‌نیازها: Python 3.10، 3.11 یا 3.12. نیازی به Microsoft Office نیست.


شروع کنید