Python 實現HTML 轉Word

之前文章分享過如何使用Spire.Doc for Python庫將Word文檔轉爲HTML格式,反過來,該庫也能實現HTML到Word文檔的轉換。通過代碼進行轉換,避免了手動複製粘貼費時間,並且可能會出現錯誤或格式混亂等問題。

Spire.Doc for Python庫能轉換一個HTML文件爲 Word Docx 格式,也能直接將HTML字符串轉爲Word文檔。具體實現方法查看下文。

 

首先通過以下pip命令安裝該Python庫:

pip install Spire.Doc

 

Python 將HTML文件轉爲Word

from spire.doc import *
from spire.doc.common import *
 
# 創建Document類的對象
document = Document()
 
# 加載一個HTML文件
document.LoadFromFile("input.html", FileFormat.Html, XHTMLValidationType.none)
 
# 將HTML文件保存爲.docx格式
document.SaveToFile("Html文件轉爲Word.docx", FileFormat.Docx2016)
document.Close()

上述代碼先加載了一個.html文件,然後通過調用 Document.SaveToFile() 方法就將該文件轉換成了.docx 格式。三行Python代碼輕鬆搞定HTML文件轉Word。

效果圖:

 

Python 將HTML字符串轉爲Word 

from spire.doc import *
from spire.doc.common import *
 
# 創建Document類的對象
document = Document()
 
# 在文檔中添加一節
sec = document.AddSection()
 
# 在該節中添加一個段落
paragraph = sec.AddParagraph()
 
# 指定HTML字符串
htmlString = """
<html>
<head>
    <title>HTML轉Word示例</title>
    <style>
        body {
            font-family: 微軟雅黑, sans-serif;
        }
        h1 {
            color: #CC3333;
            font-size: 24px;
            margin-bottom: 20px;
        }
        p {
            color: #333333;
            font-size: 16px;
            margin-bottom: 10px;
        }
        ul {
            list-style-type: disc;
            margin-left: 20px;
            margin-bottom: 15px;
        }
        li {
            font-size: 14px;
            margin-bottom: 5px;
        }
        table {
            border-collapse: collapse;
            width: 100%;
            margin-bottom: 20px;
        }
        th, td {
            border: 1px solid #CCCCCC;
            padding: 8px;
            text-align: left;
        }
        th {
            background-color: #F2F2F2;
            font-weight: bold;
        }
        td {
            color: #0000FF;
        }
    </style>
</head>
<body>
    <h1>標題示例</h1>
    <p>這是一個簡單段落展示。</p>
    <p>無序列表:</p>
    <ul>
        <li>數學</li>
        <li>語文</li>
        <li>英語</li>
    </ul>
    <p>表格:</p>
    <table>
        <tr>
            <th>產品</th>
            <th>數量</th>
            <th>價格</th>
        </tr>
        <tr>
            <td>長褲</td>
            <td>30</td>
            <td>¥150</td>
        </tr>
        <tr>
            <td>毛衣</td>
            <td>2</td>
            <td>¥99</td>
        </tr>
    </table>
</body>
</html>
"""
 
# 將 HTML 字符串添加到段落中
paragraph.AppendHTML(htmlString)
 
# 保存結果文件
document.SaveToFile("Html字符串轉Word.docx", FileFormat.Docx2016)
document.Close()

上述代碼中,首先新建了一個Word文檔並添加段落,然後通過 Paragraph.AppendHTML() 方法將HTML字符串插入到了Word文檔的段落中,最後再保存文檔即可將實現轉換。生成文件如下圖:

 

參考:Python Word 庫各功能教程 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章