匹配多个 CSS 类
Match multiple CSS classes
是否有select表达式来匹配多个类标签?
考虑以下 HTML 片段:
<div id="top">
<div class="foo bar"></div>
</div>
我可以将它与 soup.select('div#top div.foo')
或 soup.select('div#top div.bar')
匹配。
但我需要两个 类 才能到场。
有表达方式吗?
根据 CSS Spec,以下规则匹配任何 div
元素,其 class
属性已分配 space 分隔值列表,其中包括 foo
和 bar
:
div.foo.bar
BeautifulSoup 也遵循这个规范,所以你可以使用:
soup.select('div#top div.foo.bar')
您可以链接 class select 或者。 .foo.bar
表示只有 select 个元素同时具有 class foo
和 class bar
soup.select('div#top div.foo.bar')
是否有select表达式来匹配多个类标签?
考虑以下 HTML 片段:
<div id="top">
<div class="foo bar"></div>
</div>
我可以将它与 soup.select('div#top div.foo')
或 soup.select('div#top div.bar')
匹配。
但我需要两个 类 才能到场。
有表达方式吗?
根据 CSS Spec,以下规则匹配任何 div
元素,其 class
属性已分配 space 分隔值列表,其中包括 foo
和 bar
:
div.foo.bar
BeautifulSoup 也遵循这个规范,所以你可以使用:
soup.select('div#top div.foo.bar')
您可以链接 class select 或者。 .foo.bar
表示只有 select 个元素同时具有 class foo
和 class bar
soup.select('div#top div.foo.bar')