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 ไฟล์. มันได้รับการสนับสนุนโดยตัวแยกวิเคราะห์ไบนารี MS-ONE/OneStore แบบ pure-Python ที่สร้างมาในตัว, ไม่มีการทำงานร่วมกับ 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")
print(doc.DisplayName) # Section name
print(len(list(doc))) # Number of pages
สำรวจ 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 เมตาดาต้า: ตัวหนา, ตัวเอียง, ขีดเส้นใต้, ชื่อฟอนต์, สีฟอนต์, ที่อยู่ไฮเปอร์ลิงก์, และอื่น ๆ:
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
บันทึกเอกสารที่โหลดไว้ใด ๆ เป็น PDF โดยใช้แบ็กเอนด์ ReportLab ทางเลือก กำหนดช่วงหน้าและการเรนเดอร์ไอคอนแท็กด้วย 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.