Python API เพื่อแปลงเนื้อหา Word DOCX ให้เป็น HTML พร้อมใช้งานบนเว็บ

ไลบรารี Python แบบเปิดแหล่งที่อนุญาตให้นักพัฒนาซอฟต์แวร์อ่านและแปลงเนื้อหา Microsoft Word DOCX ให้เป็น HTML พร้อมใช้งานบนเว็บภายในแอป Python

Python-Mammoth คืออะไร?

การแปลงเอกสารกลายเป็นความจำเป็นสำคัญสำหรับนักพัฒนาซอฟต์แวร์ที่สร้างแอปที่ทำงานกับข้อความในสภาพแวดล้อมดิจิทัลวันนี้ การเปลี่ยนรูปแบบไฟล์อย่างราบรื่นสามารถรับประกันความเข้ากันได้และประหยัดเวลาขณะทำงานบนแพลตฟอร์ม e‑learning เครื่องมืออัตโนมัติเอกสาร หรือระบบจัดการเนื้อหา (CMS) ไลบรารีที่มีประสิทธิภาพในด้านนี้คือ Python-Mammoth ซึ่งเป็นไลบรารี Python แบบเปิดแหล่งที่ออกแบบมาสำหรับการแปลงเอกสาร Microsoft Word (DOCX) ให้เป็น HTML ที่สะอาดและมีความหมาย มันรองรับผลลัพธ์ HTML แบบเชิงความหมาย การสกัดรูปภาพจากไฟล์ DOCX การแมปสไตล์ที่กำหนดเอง คำเตือนที่เป็นประโยชน์เกี่ยวกับองค์ประกอบที่ไม่รองรับหรือปัญหาการจัดรูปแบบที่อาจเกิดขึ้น การรวมเข้ากับแอปพลิเคชันที่ใช้ Python อย่างง่ายดายและอื่น ๆ อีกมาก

พัฒนาโดย Michael Williamson, Python-Mammoth เป็นไลบรารี Python แบบเปิดแหล่งที่มุ่งเน้นการสกัดเนื้อหาสำคัญจากเอกสาร DOCX และแปลงเป็น HTML ที่มีโครงสร้างดี เป้าหมายหลักของมันคือการสร้างผลลัพธ์ HTML ที่สะอาดและมีความหมายโดยไม่ต้องใช้สไตล์อินไลน์ที่ไม่จำเป็นหรือโค้ดที่รกเกินไป แตกต่างจากเครื่องมือแปลงเอกสารอื่น ๆ มันให้ความสำคัญกับความเรียบง่ายและความแม่นยำ โดยรักษาความหมายของเอกสารเช่นหัวข้อ ย่อหน้า และรายการ แทนการมุ่งเน้นที่การแสดงผลพิกเซลที่สมบูรณ์แบบ ไลบรารีรองรับการสร้างรายงาน HTML ที่สะอาดและสม่ำเสมอจากเทมเพลต Word การเน้นที่ความเรียบง่าย ผลลัพธ์ที่สะอาดและการขยายตัวทำให้เป็นตัวเลือกที่ยอดเยี่ยมสำหรับนักพัฒนาที่ต้องการโซลูชันการแปลงเอกสาร

Previous Next

เริ่มต้นกับ Python-Mammoth

Python-Mammoth โฮสต์บน PyPI ดังนั้นการติดตั้งจึงง่ายมาก สามารถติดตั้งด้วย pip โดยใช้คำสั่งต่อไปนี้

ติดตั้ง Python-Mammoth ด้วยคำสั่ง pip

 pip install mammoth 

การแปลง Word DOCX เป็น HTML ผ่าน Python

ไลบรารี Python-Mammoth แบบเปิดแหล่งทำให้นักพัฒนาซอฟต์แวร์โหลดและแปลงไฟล์ Microsoft Word DOCX เป็น HTML ภายในแอป Python ได้อย่างง่ายดาย หนึ่งในฟีเจอร์ที่โดดเด่นของไลบรารีคือความสามารถในการสร้างผลลัพธ์ HTML ที่สะอาดและมีความหมาย มันหลีกเลี่ยงการฝังสไตล์อินไลน์หรือแท็กที่เป็นกรรมสิทธิ์ที่ไม่จำเป็น ทำให้ HTML สุดท้ายยังคงเป็นแบบเบาและง่ายต่อการสไตล์ด้วย CSS ตัวอย่างต่อไปนี้แสดงวิธีที่เนื้อหา DOCX ถูกแปลงเป็น HTML พร้อมใช้งานเพื่อแสดงผลหรือสไตล์ต่อไป

วิธีแปลงเนื้อหา DOCX เป็น HTML ผ่าน Python API?

 import mammoth

with open("document.docx", "rb") as docx_file:
    result = mammoth.convert_to_html(docx_file)
    html = result.value # The generated HTML
    messages = result.messages # Any messages, such as warnings during conversion

สนับสนุนการแมปสไตล์แบบกำหนดเอง

ไลบรารี Python-Mammoth มีตัวเลือกการปรับแต่งหลายแบบ ช่วยให้นักพัฒนาซอฟต์แวร์ปรับกระบวนการสกัดข้อความให้เหมาะกับความต้องการเฉพาะของตน นักพัฒนาสามารถกำหนดการแมปสไตล์แบบกำหนดเองเพื่อควบคุมวิธีที่สไตล์ DOCX ถูกแปลงเป็นองค์ประกอบ HTML ที่เฉพาะเจาะจง นี้ให้ความยืดหยุ่นมากขึ้นในการแสดงผลเนื้อหาเอกสาร ตัวอย่างต่อไปนี้แสดงว่าการแมปสไตล์ Heading 1 ใน DOCX ไปยังแท็ก HTML h1 ภายในแอป Python อย่างชัดเจน

วิธีแมปสไตล์ Heading 1 ใน DOCX ไปเป็นแท็ก HTML H1 ภายในแอป Python?

style_map = "p[style-name='Heading 1'] => h1:fresh"
with open("document.docx", "rb") as docx_file:
    result = mammoth.convert_to_html(docx_file, style_map=style_map)
    html = result.value
print(html)

 

แปลงรูปภาพ DOCX เป็น HTML ผ่าน Python

ไลบรารี Python-Mammoth แบบเปิดแหล่งทำให้การสกัดรูปภาพจากไฟล์ Microsoft Word DOCX เป็นเรื่องง่ายสำหรับนักพัฒนาซอฟต์แวร์และรวมไว้ใน HTML ที่ได้โดยค่าเริ่มต้น การอ้างอิงรูปภาพจะรวมเป็น URL แต่ผู้พัฒนาสามารถปรับแต่งวิธีการจัดการรูปภาพได้ ตัวอย่างต่อไปนี้แสดงว่ารูปภาพจากไฟล์ DOCX ถูกคงไว้ในผลลัพธ์ HTML อย่างไรโดยใช้คำสั่ง Python

วิธีแปลงรูปภาพจากไฟล์ DOCX เป็นผลลัพธ์ HTML ผ่าน Python API?

with open("document.docx", "rb") as docx_file:
    result = mammoth.convert_to_html(docx_file, convert_image=mammoth.images.img_element())
    html = result.value

print(html)

 

การวิเคราะห์เลย์เอาต์

ไลบรารี Python-Mammoth แบบเปิดแหล่งสามารถวิเคราะห์เลย์เอาต์ของเอกสาร Word DOCX ได้ โดยระบุองค์ประกอบต่าง ๆ เช่น ตาราง รูปภาพ และบล็อกข้อความ ฟีเจอร์นี้จำเป็นสำหรับแอปพลิเคชันที่ต้องการการสกัดข้อมูลเลย์เอาต์ที่แม่นยำ

 ไทย