HTML 是为在线浏览而设计的,而 Word 文档则是打印常见格式之一。将 HTML 转换为 Word 可以优化内容的排版和布局,使其更适合在纸质文档中显示和分页,从而满足打印文档所需的特定要求,确保生成的文档具有专业性和可读性。本文将介绍如何使用 Spire.Doc for Python 在 Python 中将 HTML 转换为 Word。
安装 Spire.Doc for Python
本教程需要用到 Spire.Doc for Python 和 plum-dispatch v1.7.4。可以通过以下 pip 命令将它们轻松安装到 Windows 中。
pip install Spire.Doc
如果您不确定如何安装,请参考此教程:如何在 Windows 中安装 Spire.Doc for Python
Python 将 HTML 文件转换为 Word
Spire.Doc for Python 提供的 Document.SaveToFile() 方法可以轻松地将 HTML 文件转换为 Word 格式。具体步骤如下:
- 创建 Document 类的对象。
- 使用 Document.LoadFromFile() 方法加载 HTML 文件。
- 使用 Document.SaveToFile() 方法将 HTML 文件保存为 Word 格式。
- Python
from spire.doc import *
from spire.doc.common import *
# 创建Document类的对象
document = Document()
# 加载一个HTML文件
document.LoadFromFile("sample.html", FileFormat.Html, XHTMLValidationType.none)
# 将HTML文件保存为.docx格式
document.SaveToFile("Html转Word.docx", FileFormat.Docx2016)
document.Close()
Python 将 HTML 字符串转换为 Word
要将 HTML 字符串转换为 Word 文档,可以使用 Paragraph.AppendHTML() 方法。具体步骤如下:
- 创建 Document 类的对象。
- 使用 Document.AddSection() 方法在文档中添加一节。
- 使用 Section.AddParagraph() 方法添加一个段落。
- 使用 Paragraph.AppendHTML() 方法将 HTML 字符串添加到段落中。
- 使用 Document.SaveToFile() 方法保存结果文档。
- Python
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: #FF5733;
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>将 HTML 转换为 Word 文档的段落示例。</p>
<p>下面是一个无序列表的示例:</p>
<ul>
<li>项目 1</li>
<li>项目 2</li>
<li>项目 3</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("HtmlStringToWord.docx", FileFormat.Docx2016)
document.Close()
申请临时 License
如果您希望删除结果文档中的评估消息,或者摆脱功能限制,请该Email地址已收到反垃圾邮件插件保护。要显示它您需要在浏览器中启用JavaScript。获取有效期 30 天的临时许可证。