我试图获取具有属性但没有值的特定标记的内容。我怎样才能得到它?例如
cont = '<nav></nav> <nav breadcrumbs> <a href="">aa</a></nav> <nav></nav>'
从上面我要提取<nav breadcrumbs> <a href="">aa</a></nav>
所以我尝试了以下一个
bread = contSoup.find("nav",{"breadcrumbs":""})
我也试过下面的
bread = contSoup.find("nav breadcrumbs")
最后,我使用RegEx来获取这些数据,我能够得到答案,但我怎样才能从美丽的汤中做到这一点
答案 0 :(得分:1)
您可以在这种情况下使用attr=True
。
cont = '<nav></nav> <nav breadcrumbs> <a href="">aa</a></nav> <nav></nav>'
soup = BeautifulSoup(cont, 'lxml') # works with 'html.parser' too.
print(soup.find('nav', breadcrumbs=True))
# which is the same as print(soup.find('nav', {'breadcrumbs': True}))
输出:
<nav breadcrumbs=""> <a href="">aa</a></nav>