概述
我使用的策略是用它的内容替换一个标签,如果它们是NavigableString类型,如果它们不是,然后递归到它们并用NavigableString等替换它们的内容。尝试这样:
from BeautifulSoup import BeautifulSoup, NavigableString
def strip_tags(html, invalid_tags):
soup = BeautifulSoup(html)
for tag in soup.findAll(True):
if tag.name in invalid_tags:
s = ""
for c in tag.contents:
if not isinstance(c, NavigableString):
c = strip_tags(unicode(c), invalid_tags)
s += unicode(c)
tag.replaceWith(s)
return soup
html = "
Good, bad, and ugly
"invalid_tags = ['b', 'i', 'u']
print strip_tags(html, invalid_tags)
其结果是:
Good, bad, and ugly
我给另一个问题这个相同的答案。它似乎出现了很多。
最后
以上就是坚定心情为你收集整理的beautifulsoup去除标签_python – 使用BeautifulSoup删除标签,但保留其内容的全部内容,希望文章能够帮你解决beautifulsoup去除标签_python – 使用BeautifulSoup删除标签,但保留其内容所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复