使用 BeautifulSoup 如何从具有多个类的元素中删除单个类?

问题描述 投票:0回答:2
python beautifulsoup
2个回答
3
投票

从你的html中,你可以看到,

 print soup.find(class_="name3").attrs
 {'class': ['name1', 'name2', 'name3']}

因此,

soup.find(class_="name3")['class']
只返回一个列表。您可以从中删除元素,就像您可以从列表中删除元素一样。喜欢,

soup.find(class_="name3")["class"].remove('name1')

这将删除您想要失去的课程。


1
投票

您可以使用生成器表达式来重建您想要保留的类名

s = 'name1 name2 name3'
s = ' '.join(i for i in s.split() if i != 'name3')

>>> s
'name1 name2'
© www.soinside.com 2019 - 2024. All rights reserved.