python docx文檔轉html頁面


文章鏈接:https://mp.weixin.qq.com/s/uMb2ziRS1NJ1GXIjofeANg

說到word文檔轉html的,網上一搜一大把,各種在線word轉html頁面,使用起來也方便。但是在實際項目中要使用的話,需要自己開發,這里就提供一個簡單的方法。
后綴 .doc 和 .docx 都是word文檔,doc是word2003以及之前版本保存的文檔,docx是word2007、word2010等保存的新型文檔,本質都是屬於文字排版的文件。注意 這里提供的方法暫時是針對docx的。

這里使用pydocx的庫,安裝pip3 install pydocx,可以直接對docx文件進行處理,簡單粗暴,PyDocX.to_html("**.docx"),返回值就是轉換后的html的源碼,然后再通過寫文件,寫到html文件里面。

from pydocx import PyDocX
html = PyDocX.to_html("test.docx")
f = open("test.html", 'w', encoding="utf-8")
f.write(html)
f.close()

這里對文件的處理都是當前文件夾下面的,得到的html文件可以直接打開查看,通過對html查看,可以發現文字轉換成了P標簽,圖片使用base64 的方式顯示的。

這里是對本地的文件進行處理,進一步部署到服務器上,我使用的是Django的項目,前端頁面通過form 表單進行上傳docx 文件。

<form method="post" enctype="multipart/form-data">
<input type="file" name="file" accept="application/vnd.openxmlformats-officedocument.wordprocessingml.document">
</form>

<input> type屬性定為file,accept="application/vnd.openxmlformats-officedocument.wordprocessingml.document" 篩選docx 的文件。

使用地址:https://www.manjiexiang.cn/blog/wordtohtml

這里上傳的文件是docx格式的word文檔,針對doc 的文檔,可以手動改成docx后綴名,進行上傳使用。 嘗試用代碼轉換成docx,window平台下有相應的庫,ubantu 暫時無果,歡迎碼友提供解決方法。
介紹下window平台下的代碼轉換方法,pip3 install pypiwin32安裝這個庫,里面有win32com,將doc文檔轉成docx 的。

from win32com import client
word = client.Dispatch("Word.Application")
doc = word.Documents.Open("D:\\***\\**.doc") //絕對路徑 doc文件
doc.SaveAs("D:\\***\\**.docx",16) //保存的docx 文件,絕對路徑
doc.Close()
word.Quit()

歡迎關注我的個人博客:https://www.manjiexiang.cn/

更多精彩歡迎關注微信號:春風十里不如認識你
一起學習,一起進步,歡迎上車,有問題隨時聯系,一起解決!!!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM