1. ผลิตภัณฑ์
  2.   Aspose.Note
  3.   Aspose.Note FOSS for Python

Aspose.Note FOSS สำหรับ Python

อ่าน, สำรวจ, และส่งออกไฟล์ Microsoft OneNote (.one) จาก Python — ฟรีและเปิดแหล่งที่มา, ไม่ต้องใช้ Microsoft Office.

ไลบรารี Python แบบเปิดแหล่งที่มาสำหรับไฟล์ OneNote

Aspose.Note FOSS สำหรับ Python เป็นไลบรารีที่ฟรี 100% ใบอนุญาต 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 หรือใหม่กว่า.

ไลบรารีนี้เหมาะสำหรับสคริปต์อัตโนมัติเอกสาร, pipeline การทำดัชนีเนื้อหา, เครื่องมือจัดเก็บข้อมูล, และเวิร์กโฟลว์ฝั่งเซิร์ฟเวอร์ใดๆ ที่ต้องการประมวลผลเนื้อหา OneNote โดยไม่ต้องพึ่งพา Microsoft Office.

อ่านและสำรวจเอกสาร OneNote

  • โหลดไฟล์ .one: เปิดส่วน OneNote ใดก็ได้จากเส้นทางไฟล์หรือสตรีมไบนารีผ่าน Document.
  • การเดินทางเต็ม DOM: นำทาง Document → Page → Outline → OutlineElement → RichText / Image / Table / AttachedFile.
  • การสกัดข้อความแบบ Rich: อ่านข้อความดิบผ่าน RichText.Text หรือสำรวจส่วน TextRun เพื่อดูข้อมูลตัวหนา, ตัวเอียง, ฟอนต์, สี, และเมตาดาต้าลิงก์.
  • การแยกตาราง: เดินทางผ่านลำดับชั้น Table → TableRow → TableCell พร้อมความกว้างของคอลัมน์และการมองเห็นเส้นขอบ.
  • การตรวจสอบแท็ก: อ่านเมตาดาต้า NoteTag (รูปทรง, ป้าย, สี, สถานะการทำเสร็จ) บนโหนดข้อความ, รูปภาพ, และตาราง.

ที่ Aspose.Note FOSS สามารถใช้ได้

  • Content indexing: ดึงและทำดัชนีข้อความทั้งหมดจากไฟล์เก็บข้อมูล OneNote สำหรับกระบวนการค้นหา.
  • Document migration: แปลงส่วนของ OneNote เป็น PDF, ข้อความธรรมดา, หรือข้อมูลเชิงโครงสร้าง.
  • Archival tools: บันทึกภาพและไฟล์แนบที่ฝังอยู่ลงดิสก์จากไฟล์ .one.
  • CI/CD workflows: ตรวจสอบหรือประมวลผลเนื้อหา OneNote ภายในคอนเทนเนอร์ Docker.
  • Knowledge-base pipelines: ดึงเนื้อหาแบบโครงสร้างจากสมุดบันทึก OneNote ของทีม.

ส่งออก, รูปภาพ, และไฟล์แนบ

  • PDF export: บันทึก Document ที่โหลดแล้วใด ๆ เป็น PDF โดยใช้ Document.Save(path, SaveFormat.Pdf).
  • PDF options: ปรับแต่งช่วงหน้า, ไดเรกทอรีไอคอนแท็ก, ขนาดไอคอน, และช่องว่างผ่าน PdfSaveOptions.
  • Image export: วนซ้ำโหนด Image เพื่อดึงข้อมูลไบต์ดิบ, ชื่อไฟล์, ขนาด, และข้อความ alt.
  • Attachment saving: วนซ้ำโหนด AttachedFile เพื่อบันทึกไฟล์แนบที่ฝังอยู่ลงดิสก์.
  • Stream-based loading: เปิดไฟล์ .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"หน้า: {len(list(doc))}")

# ดึงข้อความทั้งหมดจากเอกสารทั้งหมด
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")

# ส่งออกเอกสารเป็น 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)

คำถามที่พบบ่อย

อะไรคือ 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. รายงานบั๊กและ pull requests ยินดีรับ.

  

ทรัพยากรสนับสนุนและการเรียนรู้

 ภาษาไทย