国产化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 文件预览:

相关推荐
用户0332126663673 小时前
使用 Python 添加、隐藏或删除 PowerPoint 幻灯片
python
言乐63 小时前
Python关键词抓取目标网站
python·django·virtualenv·pygame·tornado
用户7783366132113 小时前
搜索页的 URL 状态管理:可分享、可回退、可刷新
python·api
Liaiyang663 小时前
空圈容错视角下的无人机全链路审计:从理论框架到耦合式检验
人工智能·pytorch·python·深度学习·系统架构·自动驾驶·无人机
liuchangng3 小时前
Jev 模型研究:从生成式大模型到决策式模型——System One、RLCD 校准与采用边界
java·javascript·人工智能·python·深度学习
微小冷4 小时前
patsy:Python中的统计建模语法
python·统计·建模·patsy·statmodels
我是神64 小时前
抖音直播QQ估价直播软件exe详解
python·tkinter·qq评估
2601_966949654 小时前
为什么量化回测中 for 循环比 DataFrame 慢三个数量级?从向量化原理讲起
开发语言·python·pandas·股票数据·quantdash
我命由我123455 小时前
CSS - CSS 媒体查询 orientation
前端·javascript·css·html·css3·html5·js
打工仔折腾 AI5 小时前
用 Docker 部署 Excalidraw 手绘白板并配置固定公网访问的完整实践
人工智能·后端·python