我有这段HTML代码:
<li class="ui-menu-item" id="ui-id-12" tabindex="-1"><a>2</a></li>
<a>2</a>
</li>
id"ui-id-12" 正在动态变化,数字是被更改的部分,所以我想知道如何使用 Selenium & XPaths 找到这个元素。我正在考虑使用锚元素标签中的内容查找元素,但不确定这是否明智,所以我来这里询问什么是最佳选择。
<li>
元素的id属性的值,即ui-id-12是动态的。因此,要找到元素,您可以使用以下任一定位器策略:
-
使用
css_selector
:element = driver.find_element_by_css_selector("li.ui-menu-item[id^='ui-id-']")
-
使用
xpath
:element = driver.find_element_by_xpath("//li[starts-with(@id, 'ui-id-') and @class='ui-menu-item']")