7

我将如何使用 BeautifulSoup删除一个标签?我找到的方法会删除标签以及其中的所有其他标签和内容。我只想删除标签并保留其中的所有内容不变,例如

改变这个:

<div>
<p>dvgbkfbnfd</p>
<div>
<span>dsvdfvd</span>
</div>
<p>fvjdfnvjundf</p>
</div>

对此:

<p>dvgbkfbnfd</p>
<span>dsvdfvd</span>
<p>fvjdfnvjundf</p>
4

1 回答 1

8

我已投票关闭作为副本,但如果它有用,从右边的顶部相关答案重新应用 slacy 的答案会给你这个解决方案:

from BeautifulSoup import BeautifulSoup

html = '''
<div>
<p>dvgbkfbnfd</p>
<div>
<span>dsvdfvd</span>
</div>
<p>fvjdfnvjundf</p>
</div>
'''

soup = BeautifulSoup(html)
for match in soup.findAll('div'):
    match.replaceWithChildren()

print soup

...产生输出:

<p>dvgbkfbnfd</p>

<span>dsvdfvd</span>

<p>fvjdfnvjundf</p>
于 2012-05-11T18:18:41.050 回答