The filter() and exclude() methods can be used to select a subset of elements from a WebElementSet.
Filters a WebElementSet to only include elements that match the selector.
>>> from webdriverplus import WebDriver
>>> snippet = """
... <ul>
... <li>1</li>
... <li class="selected">2</li>
... <li>3</li>
... <li>4</li>
... <li class="selected">5</li>
... </ul>"""
>>> WebDriver().open(snippet).find('li').filter('.selected')
WebElementSet(
<li class="selected">2</li>
<li class="selected">5</li>
)
Filters a WebElementSet to only include elements that do not match the selector.
>>> from webdriverplus import WebDriver
>>> snippet = """
... <ul>
... <li>1</li>
... <li class="selected">2</li>
... <li>3</li>
... <li>4</li>
... <li class="selected">5</li>
... </ul>"""
>>> WebDriver().open(snippet).find('li').exclude('.selected')
WebElementSet(
<li>1</li>
<li>3</li>
<li>4</li>
)