在python中从字符串中删除html标记和实体
我正在从api.careerbuilder.com获取xml数据 特别是,字符串包含一些html实体,我愿意删除,没有任何效果 我尝试过这样做:在python中从字符串中删除html标记和实体,python,html,Python,Html,我正在从api.careerbuilder.com获取xml数据 特别是,字符串包含一些html实体,我愿意删除,没有任何效果 我尝试过这样做: import re re.sub('\<.*?\>', '', job_title_text) 还有这个 from html.parser import HTMLParser class MLStripper(HTMLParser): def __init__(self): self
import re
re.sub('\<.*?\>', '', job_title_text)
还有这个
from html.parser import HTMLParser
class MLStripper(HTMLParser):
def __init__(self):
self.reset()
self.fed = []
def handle_data(self, d):
self.fed.append(d)
def get_data(self):
return ''.join(self.fed)
def strip_tags(html):
s = MLStripper()
s.feed(html)
return s.get_data()
strip_tags(job_title_text)
最后这个
import lxml.html
(lxml.html.fromstring(job_title_text)).text_content()
但所有这些都是失败。第二种方法删除了诸如“&”之类的html实体,但标记中的文本被保留了下来,例如“pbrspan”。第三个完全毁了一切,没有显示任何数据
有什么想法,如何处理吗?试试这个正则表达式
(\<\;).*(\>\)考虑使用BeautifulSoup删除标记,这是一个很好的文档,
text\u content
是一个方法,而不是一个属性——这意味着您需要调用它(text\u content()
),它才能产生任何有用的东西。@MaxNoel啊,对不起,您是对的,这是一个输入错误