Python 基础教程

Python 高级教程

Python 相关应用

Python 笔记

python 过滤去掉 html 中的 tag 标签并提取文本内容的几种方法

Python 笔记 Python 笔记


python 中,如果想从带有 html 中的富文本内容中,提取文本有很多种方法。

html2text(推荐)

html2text 顾名思义就是为了这种场景而设计的,它会去掉标签只保留文本信息。相关信息网址:https://pypi.org/project/html2text/

通过 pip 命令进行安装,命令如下:

pip3 install html2text

使用更加简便,直接调用 html2text 函数即可,示例如下:

import html2text

txt = html2text.html2text('<p>坚持就是胜利</p>')
print(type(txt))
print(txt)

返回 str 类型的纯文本信息。

BeautifulSoup

安装命令如下:

pip install beautifulsoup4

具体使用示例如下:

from bs4 import BeautifulSoup

html = '<p>坚持就是胜利</p>'
soup = BeautifulSoup(html, 'html.parser')
txt = soup.get_text()
print(type(txt))
print(txt)

lxml

也可以使用 lxml 库,它支持 HTML 和 XML 的解析,支持 XPath 解析方式,而且解析效率非常高。

import lxml.html

html = '<p>坚持就是胜利</p>'
string = lxml.html.document_fromstring(html)
print(type(string))
raw_text = string.text_content()
print(type(raw_text))
print(raw_text)