在 Python 中剥离 HTML 标签以获得原始文本表示
操作 HTML 响应通常涉及提取相关文本内容,同时消除格式标签。这可以通过有效地剥离 HTML 标签来实现,留下所需的纯文本。
使用 Python 的 MLStripper 实现纯文本提取
为了简化剥离过程, Python 标准库提供了一个专门为此目的而设计的高效函数 MLStripper。 MLStripper 接受 HTML 输入并解析它,仅保留非标记内容。
Python 3 和 2 的实现
根据您的 Python 版本,您可以使用以下内容代码片段:
Python 3:
from io import StringIO from html.parser import HTMLParser class MLStripper(HTMLParser): def __init__(self): super().__init__() self.reset() self.strict = False self.convert_charrefs= True self.text = StringIO() def handle_data(self, d): self.text.write(d) def get_data(self): return self.text.getvalue() def strip_tags(html): s = MLStripper() s.feed(html) return s.get_data()
Python 2:
from HTMLParser import HTMLParser from StringIO import StringIO class MLStripper(HTMLParser): def __init__(self): self.reset() self.text = StringIO() def handle_data(self, d): self.text.write(d) def get_data(self): return self.text.getvalue() def strip_tags(html): s = MLStripper() s.feed(html) return s.get_data()
用法:
只需调用 strip_tags函数将 HTML 输入作为字符串参数传递。返回的值将是删除了所有 HTML 标签的剥离字符串。
当您需要使用从 HTML 源提取的文本数据时,这种技术被证明是非常有用的,以确保干净且易于管理的文本表示。
以上是如何在Python中有效地从文本中去除HTML标签?的详细内容。更多信息请关注PHP中文网其他相关文章!