删除部分 html(标签)保持样式 - python

问题描述 投票:0回答:1

我想在保存之前删除 HTML 中包含特定字符串的部分。该标签包含一个人的姓名,我想删除整个标签以使其匿名。

HTML 为:

<div id="top-card" data-li-template="top_card">...</div>

以及它所有的孩子。

我探索使用 beautifulsoup 但找不到解决方案。

有没有办法可以删除整个 HTML

portion
,同时保持样式不变?

谢谢!

python html css python-2.7 beautifulsoup
1个回答
1
投票

您可以使用

.extract()
来删除使用
BeautifulSoup
的元素。

假设你要删除id为“top-card”的div:

>>> html = """
... <div id="top-card" data-li-template="top_card"><div>test</div></div>
... <div>test</div> <div id="foo">blah</div>"""
>>> soup = BeautifulSoup(html)
>>> [div.extract() for div in soup("div",id="top-card")]
[<div data-li-template="top_card" id="top-card"><div>test</div></div>]
>>> soup
<html><body>
<div>test</div> <div id="foo">blah</div></body></html>
© www.soinside.com 2019 - 2024. All rights reserved.