ในบางกรณี คุณจำเป็นต้องแบ่งเอกสาร Word ขนาดใหญ่โดยแยกย่อยออกเป็นเอกสารย่อยๆ คุณสามารถแบ่งเอกสาร Word ตามหน้า ส่วน หรือคอลัมน์ ในบทความนี้ คุณจะได้เรียนรู้วิธีแยกเอกสาร Word ออกเป็นหลายไฟล์โดยใช้ Python คำแนะนำทีละขั้นตอนและตัวอย่างโค้ดจะสาธิตวิธีแยกเอกสาร Word ตามส่วน หน้า หรือช่วงหน้าโดยทางโปรแกรม
- Python Library เพื่อแยกเอกสาร MS Word
- แยกเอกสาร Word ออกเป็นส่วนๆ
- การแยกเอกสาร Word ตามหน้า
- แยกเอกสาร Word ตามช่วงหน้า
Python Library เพื่อแยกเอกสาร MS Word
หากต้องการแยกเอกสาร DOCX หรือ DOC ออกเป็นหลายๆ ไฟล์ เราจะใช้ Aspose.Words for Python เป็นไลบรารีการประมวลผลคำสำหรับสร้างและจัดการเอกสาร Word คุณสามารถติดตั้งในแอปพลิเคชัน Python จาก PyPI โดยใช้คำสั่ง pip ต่อไปนี้
pip install aspose-words
แยกเอกสาร Word ตามส่วนต่างๆ ใน Python
ในกรณีส่วนใหญ่ เอกสาร Word จะแบ่งออกเป็นหลายส่วนโดยใช้ตัวแบ่งส่วน หากต้องการบันทึกแต่ละส่วนเป็นไฟล์แยกกัน คุณสามารถแบ่งเอกสารตามส่วนต่างๆ ได้ ขั้นตอนต่อไปนี้สาธิตวิธีการแบ่งเอกสาร Word ตามส่วนต่างๆ ใน Python
- โหลดเอกสาร Word โดยใช้คลาส Document
- วนซ้ำแต่ละส่วนในคอลเลกชัน Document.sections
- สำหรับแต่ละส่วนในคอลเลกชัน ให้ทำตามขั้นตอนต่อไปนี้:
- สร้างวัตถุใหม่ของคลาสเอกสาร
- ล้างส่วนเริ่มต้นโดยใช้เมธอด Document.sections.clear()
- นำเข้าส่วนไปยังเอกสารใหม่โดยใช้เมธอด Document.importnode(Section, True).assection() และรับส่วนที่ส่งคืนในวัตถุ
- เพิ่มส่วนที่ส่งคืนไปยังคอลเลกชันส่วนของเอกสารใหม่
- บันทึกเอกสารใหม่เป็นไฟล์ DOCX โดยใช้วิธี Document.save(string)
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีแยกเอกสาร Word ตามส่วนต่างๆ ใน Python
import aspose.words as aw
# โหลดเอกสาร Word
doc = aw.Document("document.docx")
for i in range(0, doc.sections.count) :
# โคลนส่วนที่จะแยก
section = doc.sections[i].clone()
# สร้างอินสแตนซ์ของคลาส Document สำหรับเอกสารใหม่
newDoc = aw.Document()
# ล้างส่วนเริ่มต้น
newDoc.sections.clear()
# แทรกส่วนในเอกสารใหม่
newSection = newDoc.import_node(section, True).as_section()
newDoc.sections.add(newSection)
# บันทึกส่วนเป็นเอกสารแยกต่างหาก
newDoc.save(f"split_by_sections_{i}.docx")
การแยกเอกสาร Word ตามหน้าใน Python
ตอนนี้ มาดูวิธีการแยกเอกสารแต่ละหน้าและบันทึกเป็นไฟล์ DOCX แยกกัน ต่อไปนี้เป็นขั้นตอนในการแบ่งเอกสาร Word ตามหน้า
โหลดเอกสาร Word โดยใช้คลาส Document
รับจำนวนหน้าในเอกสารโดยใช้คุณสมบัติ Document.pagecount
วนซ้ำจำนวนหน้าและในการวนซ้ำแต่ละครั้ง ให้ทำตามขั้นตอนต่อไปนี้:
แยกหน้าลงในวัตถุโดยใช้เมธอด Document.extractpages(pageIndex, 1)
บันทึกหน้าที่แยกออกมาเป็นไฟล์ DOCX โดยใช้วิธี Document.save(string)
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการแยกเอกสาร Word ตามหน้า
import aspose.words as aw
# โหลดเอกสาร Word
doc = aw.Document("document.docx")
# รับจำนวนหน้า
pageCount = doc.page_count
# วนซ้ำผ่านหน้า
for page in range(0, pageCount):
# บันทึกแต่ละหน้าเป็นเอกสารแยกต่างหาก
extractedPage = doc.extract_pages(page, 1)
extractedPage.save(f"split_by_page_{page + 1}.docx")
แยกเอกสาร Word ตามช่วงหน้าใน Python
คุณยังสามารถแยกช่วงของหน้าในเอกสาร Word และบันทึกเป็นไฟล์แยกต่างหาก ต่อไปนี้เป็นขั้นตอนในการบรรลุสิ่งนี้ใน Python
- โหลดเอกสาร Word โดยใช้คลาส Document
- แยกหน้าโดยใช้เมธอด Document.extractpages(int, int) โดยที่พารามิเตอร์ตัวแรกคือดัชนีของหน้าเริ่มต้น และตัวที่สองคือจำนวนหน้า
- บันทึกช่วงหน้าที่แยกเป็นไฟล์ DOCX โดยใช้วิธี Document.save(string)
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการแยกช่วงของหน้าจากเอกสาร Word และบันทึกเป็นไฟล์ DOCX
import aspose.words as aw
# โหลดเอกสาร Word
doc = aw.Document("document.docx")
# แยกช่วงของหน้า
extractedPages = doc.extract_pages(3, 6)
# บันทึกหน้าเป็นเอกสารแยกต่างหาก
extractedPages.save("split_by_page_range.docx")
รับใบอนุญาต API ฟรี
คุณสนใจที่จะลองใช้ Aspose.Words for Python ฟรีหรือไม่? รับใบอนุญาตชั่วคราว เพื่อหลีกเลี่ยงข้อจำกัดในการประเมิน
บทสรุป
ในบทความนี้ คุณได้เรียนรู้วิธีแยกเอกสาร Word เป็นหลายเอกสารใน Python ตัวอย่างโค้ดได้สาธิตวิธีแยกเอกสาร Word ตามส่วน หน้า หรือช่วงหน้า Aspose.Words for Python ยังมีคุณสมบัติที่น่าตื่นเต้นอีกมากมายที่คุณสามารถสำรวจได้โดยใช้ เอกสารประกอบ นอกจากนี้ คุณสามารถโพสต์คำถามของคุณไปที่ ฟอรัม ของเรา