2013-05-04 79 views
0

我想要BeautifulSoup查找具有某个类的html页面中的所有元素。但他们也可以有额外的课程。例如:查找包含特定类的所有html元素

soup.findAll('tr', {'class': 'super_class1'}) 

此代码仅发现tr其只有super_class1。但我想它找到所有tr其含有该类这样

<tr class='super_class1'>aaa</tr> 

<tr class='super_class1 super_class2'>bbb</tr> 

<tr class='super_class1 super_class15 super_class16'>ccc</tr> 

回答

1

这是(https://bugs.launchpad.net/beautifulsoup/+bug/410304)已经修正了一个错误;问题基本上是汤不能识别班级名称中的空格。

但是,如果你必须使用一个版本没有修复,上面的链接也提供了解决方案:

soup.findAll(True, {'class': re.compile(r'\bsuper_class1\b')}) 
相关问题