Cha*_*les 7 html python dom beautifulsoup
我有这样的Python汤:
<p>
<span style="text-decoration: underline; color: #3366ff;">
Title:
</span>
Info
</p>
<p>
<span style="color: #3366ff;">
<span style="text-decoration: underline;">
Title2:
</span>
</span>
Info2
</p>
Run Code Online (Sandbox Code Playgroud)
我想让它看起来像这样:
<p>
Title:
Info
</p>
<p>
Title2:
Info2
</p>
Run Code Online (Sandbox Code Playgroud)
有没有办法用bs4做到这一点?
Aar*_*ron 18
你会想要使用beautifulsoup的unwrap().
import bs4
soup1 = bs4.BeautifulSoup(htm1, 'html.parser')
for match in soup1.findAll('span'):
match.unwrap()
print soup1
Run Code Online (Sandbox Code Playgroud)
您还可以使用replace_with删除跨度标签:
from bs4 import BeautifulSoup
soup = BeautifulSoup(html)
for span_tag in soup.findAll('span'):
span_tag.replace_with('')
print(soup)
Run Code Online (Sandbox Code Playgroud)