import html import re from html.parser import HTMLParser # NOTE: 现在没用这个,因为不好解决转义字符的问题 # 除非分段处理,但是太麻烦了... class HTMLTagRemover(HTMLParser): def __init__(self): super().__init__() self.reset() self.fed = [] def handle_data(self, data): self.fed.append(data) def get_data(self): return "\n".join(self.fed) def remove_html_tags(text): parser = HTMLTagRemover() parser.feed(text) return parser.get_data() def remove_html_tags_re(text): text = html.unescape(text) html_tags_pattern = re.compile(r"]*>") return re.sub(html_tags_pattern, " ", text) if __name__ == "__main__": input_text = """

一个标题

这是一段包含标签的文本。 & <设定> 一些文本 """ # input_text = "我&你" output_text = remove_html_tags_re(input_text) print(output_text) # 输出: 一个标题 这是一段包含标签的文本。