国产化Word处理组件Spire.DOC教程:通过Python将HTML转换为TXT文本

HTML(超文本标记语言)是一种用于创建网页的标记语言,能让开发者构建内容丰富、视觉吸引力强的页面布局。然而,HTML 文件通常包含大量标签,若仅需获取主要内容,这些标签会使其难以阅读。通过 Python 将 HTML 转换为文本,可轻松解决这一问题。与原始 HTML 不同,转换后的文本文件会剥离所有不必要的标记,仅保留干净易读的内容,更便于存储、分析或进一步处理。

安装 HTML 转文本 Python 库

推荐使用Spire.Doc for Python实现转换。该 Python Word 库不仅是轻量高效的 HTML 转文本工具,还支持几乎所有 Word 操作(如创建、内容编辑等),兼容性强、上手简单。

Spire.Doc for Python试用下载

通过 pip 命令安装(推荐)

打开终端 / 命令行,执行以下命令即可自动完成安装:

复制代码
pip install spire.doc

Python 将 HTML 文件转换为文本

借助**Spire.Doc for Python**,仅需 3 个简单步骤即可将本地 HTML 文件转换为纯文本:创建 Document 对象 → 加载 HTML 文件 → 保存为 TXT 格式。整个过程简洁高效,新手也能轻松上手!下面详细介绍代码实现:

代码示例 --- HTML 文件转 TXT 文本文件

复制代码
from spire.doc import *
from spire.doc.common import *

# 打开 HTML 文件
document = Document()
document.LoadFromFile("sample.html.html", FileFormat.Html, XHTMLValidationType.none)

# 保存为文本文件
document.SaveToFile("HTML转文本.txt", FileFormat.Txt)

document.Close()

转换效果预览(源文件 vs 输出文件):

请注意:若 HTML 文件包含表格,输出的文本文件将仅保留表格中的数据,无法保留原始表格格式。若希望移除标记的同时保留特定样式,建议先将 HTML 转换为 Word 文档,这样可保留标题、表格等格式,让内容更易于编辑和使用。

Python 将 HTML 字符串转换为文本

如果仅需提取网页部分内容(如爬取的 HTML 片段),可直接将 HTML 字符串转换为文本,无需加载完整 HTML 文件,更灵活高效。

Spire.Doc 转换 HTML 字符串到文本文件的实现步骤:

  1. 直接输入 HTML 字符串或从本地文件读取;
  2. 创建 Document 对象并添加节(Section)和段落(Paragraph);
  3. 使用 Paragraph.AppendHTML() 方法将 HTML 字符串插入段落;
  4. 通过 Document.SaveToFile() 方法将文档保存为 .txt 文件。

代码示例 --- HTML 字符串转 TXT 文本文件

复制代码
from spire.doc import *
from spire.doc.common import *

# 获取 HTML 字符串(可注释下方代码,取消注释读取本地文件的逻辑)
# with open(inputFile) as fp:
#     html = fp.read()

# 定义 HTML 字符串
html = """
 <html>
     <body>
         <h1>示例HTML内容</h1>
         <p>这是一个包含<strong>粗体</strong>和<em>斜体</em>文本的段落。</p>
         <p>另一行带有<a href='https://example.com'>链接</a>。</p>
         <ul>
             <li>列表项1</li>
              <li>列表项2(带有<em>斜体</em>文本)</li>
         </ul>
         <p>特殊字符:© & ®</p>
     </body>
 </html>
"""

# 创建新文档
document = Document()
section = document.AddSection()

# 将 HTML 字符串插入段落
section.AddParagraph().AppendHTML(html)

# 保存为 TXT 文件
document.SaveToFile("HTML字符串转文本.txt", FileFormat.Txt)
document.Close()

转换后的 TXT 文件预览:

相关推荐
青少儿编程课堂26 分钟前
迪杰斯特拉(Dijkstra)算法:单源最短路与赛场路线规划
c++·python·算法·bfs·信息学竞赛
志尊宝31 分钟前
Vue3 零基础每日笔记(071):暗黑模式与主题切换——CSS 变量 + Element Plus 暗黑方案
前端·css·笔记·vue·html·前端开发·软件开发
计算机编程指导师39 分钟前
【计算机毕设推荐】基于Hadoop+Spark的公共交通运营数据分析与可视化系统源码 毕业设计 选题推荐 毕设选题 数据分析 机器学习
大数据·hadoop·python·计算机·数据分析·spark·交通
Wx-bishekaifayuan41 分钟前
springboot汉中旅游服务平台41442-计算机课程设计、毕业设计
spring boot·后端·python·django·课程设计·express·旅游
WeiXin_DZbishe1 小时前
基于springboot城市公交实时运营与调度系统-计算机毕设 附源码【课程设计】66173
java·vue.js·spring boot·后端·python·php·课程设计
泡茶喝茶写代码1 小时前
A股量化数据工程:从 REST 接口到策略信号(第 18 篇):放量缩量异动扫描
java·python·股票数据api·股票数据api接口·股票api数据接口·股票量化数据api·股票量化数据接口
WeiXin_DZbishe1 小时前
基于Springboot+AI的kuall音乐广场的设计与实现-计算机毕设 附源码【课程设计】12715
vue.js·人工智能·spring boot·后端·python·php·课程设计
imgsq3 小时前
电子学会考级 vs CCF-GESP:两套少儿编程考级怎么选
python·青少年编程
Smoothcloud润云3 小时前
PyTorch推理服务动态批处理实战:兼顾吞吐与延迟
人工智能·pytorch·python·深度学习·ai·gpu算力