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

相关推荐
幻云20108 小时前
Python深度学习:从筑基到登仙
前端·javascript·vue.js·人工智能·python
仰望星空@脚踏实地9 小时前
本地Python脚本是否存在命令注入风险
python·datakit·命令注入
LOnghas121110 小时前
果园环境中道路与树木结构检测的YOLO11-Faster语义分割方法
python
2501_9445264211 小时前
Flutter for OpenHarmony 万能游戏库App实战 - 蜘蛛纸牌游戏实现
android·java·python·flutter·游戏
飞Link12 小时前
【Django】Django的静态文件相关配置与操作
后端·python·django
Ulyanov12 小时前
从桌面到云端:构建Web三维战场指挥系统
开发语言·前端·python·tkinter·pyvista·gui开发
CCPC不拿奖不改名13 小时前
两种完整的 Git 分支协作流程
大数据·人工智能·git·python·elasticsearch·搜索引擎·自然语言处理
a努力。14 小时前
字节Java面试被问:TCP的BBR拥塞控制算法原理
java·开发语言·python·tcp/ip·elasticsearch·面试·职场和发展
费弗里14 小时前
一个小技巧轻松提升Dash应用debug效率
python·dash
小小测试开发14 小时前
Python浮点型常用方法全解析:从基础到实战
python