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 نیست.