单击带有硒的动态变化的ID元素

问题描述 投票:0回答:1

我有这段HT​​ML代码:

<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查找此元素。我当时正在考虑使用锚元素标签中的内容来查找元素,但是不确定这是否明智,因此我来这里询问的是最佳选择。

python selenium selenium-webdriver xpath css-selectors
1个回答
0
投票
[<li>元素的

id属性的值,即ui-id-12是动态的。因此,要查找元素,您可以使用以下Locator Strategies中的任何一个:

  • 使用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']")

  • © www.soinside.com 2019 - 2024. All rights reserved.