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 实现HTML 转Word的更多相关文章
- Python处理PDF和Word文档常用的方法
Python处理PDF和Word文档的模块是PyPDF2,使用之前需要先导入. 打开一个PDF文档的操作顺序是:用open()函数打开文件并用一个变量来接收,然后把变量给传递给PdfFileReade ...
- [LeetCode]题解(python):079 Word Search
题目来源 https://leetcode.com/problems/word-search/ Given a 2D board and a word, find if the word exists ...
- 使用python编辑和读取word文档
python调用word接口主要用到的模板为python-docx,基本操作官方文档有说明. python-docx官方文档地址 使用python新建一个word文档,操作就像文档里介绍的那样: fr ...
- Python处理PDF和Word文档常用的方法(二)
Python处理word时,需要安装和导入python-docx模块. 安装命令:pip install python-docx 导入命令:import docx 编码编写顺序:用docx.Docum ...
- Python教程:[43]Word基本操作
使用python操作Word用到了win32com模块,我们现在就要介绍一下python对Word的基本操作,文章涉及到如何与Word程序建立连接.如果与Word文档建立连接的,以及对Word文档的基 ...
- 看Python如何无缝转换Word和Excel
word和excel是办公过程必不可少的两个文档类型,word多用于文字处理,比如备忘录.论文.书籍.报告.商业信函等,excel可以制作精美的图表,还可以计算.分析.记录数据.二者在功能达成上有重叠 ...
- [LeetCode&Python] Problem 720. Longest Word in Dictionary
Given a list of strings words representing an English Dictionary, find the longest word in words tha ...
- python使用python-docx导出word
#!/usr/bin/env python # -*- coding: utf-8 -*- ''' ''' from docx import Document from docx.shared imp ...
- Python用python-docx读写word文档
python-docx库可用于创建和编辑Microsoft Word(.docx)文件.官方文档:https://python-docx.readthedocs.io/en/latest/index. ...
- 【Python】PDF转WORD
注意,下文中的PDF文档是纯文字格式,而且非扫描版的PDF文件. 如果是扫描版或者带有图片的.可能转起来会出现排版异常并且图片无法保存到.doc文件中. 正文开始: 需要安装依赖包 pdfminer3 ...
随机推荐
- 如何使用Vite创建Vue3的uniapp项目
项目结构 my-vue3-project ├─ .env //默认环境变量 ├─ .env.development //开发环境变量 ├─ .eslintrc-auto-import.json //( ...
- 如何在kubernetes中实现分布式可扩展的WebSocket服务架构
如何在kubernetes中实现分布式可扩展的WebSocket服务架构 How to implement a distributed and auto-scalable WebSocket serv ...
- MPI转以太网Plus模块Modbus连接两台变频器通信案例
MPI转以太网Plus模块Modbus主站连接两台变频器通信案例 MPI转以太网Plus模块连接200PLC无需编程实现Modbus主从站功能与2台变频器modbus通信:以下就是MPI转以太网模块作 ...
- Go语言常用标准库——flag
文章目录 os.Args flag包基本使用 导入flag包 flag参数类型 定义命令行flag参数 flag.Type() flag.TypeVar() flag.Parse() flag其他函数 ...
- VideoCapture
from xgoedu import XGOEDU import time #实例化edu XGO_edu = XGOEDU() XGO_edu.lcd_text(50,50,'hello',colo ...
- 使用Eclipse生成CHM帮助文档(图解)
使用Eclipse生成CHM帮助文档(图解) 博客分类: System Operate javadoc生成chm文档java生成api帮助文档api帮助文档生成工具 Eclipse JavaDoc和j ...
- 手敲,Ascend算子开发入门笔记分享
本文分享自华为云社区<Ascend算子开发入门笔记>,作者: JeffDing . 基础概念 什么是Ascend C Ascend C是CANN针对算子开发场景推出的编程语言,原生支持C和 ...
- 《最新出炉》系列初窥篇-Python+Playwright自动化测试-19-处理鼠标拖拽-中篇
1.简介 上一篇中,主要是介绍了拖拽的各种方法的理论知识以及实践,今天宏哥讲解和分享一下划取字段操作.例如:需要在一堆log字符中随机划取一段文字,然后右键选择摘取功能. 2.划取字段操作 划取字段操 ...
- Velocity之Hello World(入门实例)
参考:http://blog.csdn.net/mengxuwq/article/details/1871161 (非常感谢这篇文章,让我初步入门) 自己调试完全能运行后,写在此,供新人参考,供自己温 ...
- [Python急救站课程]同切圆的绘制
绘制同切圆 import turtle # 引用turtle 库 turtle.pensize(2) # 设置画笔宽度为2 像素 turtle.circle(10) # 绘制半径为10 像素的圆 tu ...