Aspose.Note FOSS for Python เป็นห้องสมุดที่มีลิซเซนส์ MIT ที่ฟรี 100% ซึ่งจะให้คุณอ่านไฟล์ Microsoft OneNote (.one) ทั้งหมดจาก Python โดยไม่มีการใช้งาน Microsoft Office, การอัตโนมัติ COM และไม่ต้องใช้เวลาทํางานของเจ้าสิทธิ์ มันเปิดเผย API สะอาดสาธารณะ (aspose.note.*) ตามแบบ Aspose.Note สําหรับอินเตอร์เฟส .NET รองรับโดยเครื่องพาร์เซอร์ไบนารี MS-ONE / OneStore ที่เขียนในภาษา ไพตันบริสุทธิ์.
การติดตั้งจาก PyPI ด้วย pip install aspose-note (หรือ pip install "aspose-note[pdf]" เพื่อเปิดการส่งออก PDF) จําเป็น Python 3.10 หรือหลังกว่า.
ห้องสมุดนี้เหมาะสําหรับสกริปอัตโนมัติเอกสาร, ไพเพลินการแสดงอินเด็กซ์เนื้อหา, เครื่องมือเก็บข้อมูลและกระบวนการทํางานด้านเซอร์เวอร์ใด ๆ ที่ต้องการบริโภคเน้นส่วนของ OneNote โดยไม่ต้องใช้ Microsoft Office. สําหรับครอบครัวสินค้าองค์กร ดู Aspose.Note — Enterprise Product Family.
Document.Document → Page → Outline → OutlineElement → RichText / Image / Table / AttachedFile.RichText.Text หรือตรวจสอบส่วนของ TextRun เพื่อข้อมูลเมตาเดต้าที่เข้มแข็ง, รอยทับ, แฟนต์, สี และไฮเปอร์ลิงค์.Table → TableRow → TableCell ระดับชั้น; อ่านความกว้างของคอลัมน์ผ่านTableColumn.Width.NoteTag เมตาเดท (รูปร่าง, แล็ก, สี, รัฐความสําเร็จ) บนข้อความ, ภาพและตารางค้อน..one.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.
อินสตอลกับ pip แล้วส่งเส้นทางไฟล์ไปยัง Document() เพื่อพาร์ซรูปแบบไบนารีของ OneNote. GetChildNodes(RichText) ทําการค้นหาที่รีคอร์ซิฟลึกและคืนทุกโน้ดข้อความในเอกสาร ซึ่งเป็นประโยชน์สําหรับการอindex แบบเต็มเท็กซ์หรือท่อการย้ายตัว
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 ต้องใช้ความพึ่ง ReportLab แบบเลือก. ติดตั้งมันด้วย pip install "aspose-note[pdf]". วัตถุ Document เดียวกันยังสามารถนําไปทําการต่อเนื่องสําหรับ node 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)
เป็นห้องสมุด Python ที่มีใบอนุญาต MIT ฟรี สําหรับการอ่านไฟล์ Microsoft OneNote (.one) โดยไม่จําเป็นต้องใช้ Microsoft Office, COM อัตโนมัติ หรือ runtime ของเจ้าของใด ๆ
OneNote 2010, OneNOte Online, และรูปแบบแปรของ OneNot 2007. สามารถอัพโหลดไฟล์ส่วน .one ที่มีค่าใดก็ได้.
ใช้ pip install aspose-note สําหรับห้องสมุดฐาน, หรือ pip install "aspose-note[pdf]" เพื่อรวมความพึ่ง ReportLab แบบเลือกสําหรับการส่งออก PDF.
ใช่. เรียก Document.Save(path, SaveFormat.Pdf). การส่งออก PDF ต้องมีการติดตั้งความพึ่ง ReportLab แบบเลือกผ่านการเพิ่มเติม [pdf]
ใช่. คลาส Document ยอมรับการกระจายไบนารี (เช่น, io.BytesIO หรือร่างการตอบสนอง HTTP) เพื่อให้คุณสามารถประมวลผลไฟล์โดยไม่ต้องเขียนในดิสก์
Python 3.10 หรือหลังกว่านี้จําเป็นต้องใช้
ไม่. ฉบับปัจจุบันเป็นการอ่านเท่านั้น มันสามารถเปิดและวิเคราะห์ไฟล์ส่วน .one ที่มีค่า แต่เขียนกลับเข้ารูปแบบไบนารีของ OneNote ไม่ได้สนับสนุน
ไม่ การอัดไฟล์ที่คุ้มครองด้วยคําผ่าน .one จะทําให้เกิดการเปิดตัว IncorrectPasswordException เอกสารที่มีรหัสซับรองไม่ได้ในฉบับปัจจุบัน.
ห้องสมุดมีใบอนุญาตจาก MIT และเป็นที่จัดตั้งใน GitHub. รายงาน Bug และการขอ pull เป็นอย่างดีครับ