Selenium查找ID属性以唯一字符开头、以随机字符结尾的元素



这是HTML中我的按钮的代码:

<button type="submit" class="btn btn-secondary" id="single_button618eda460b64617" title="">Re-attempt quiz</button>

并且我为许多其他组件定义的类和CCD_ 1总是以CCD_。

但结局是随机的。它是唯一一个以这个前缀开头的。

除了第一个single_button,我如何使用button=driver.find_element_by_id()

由于元素是id属性前缀以该唯一值开头的唯一元素,因此可以使用以下动态定位器策略之一:

  • 使用css_selector:

    button = driver.find_element(By.CSS_SELECTOR, "button[id^='single_button']")
    

PS:id^表示,id属性的值以开头。

  • 使用xpath:

    button = driver.find_element(By.XPATH, "//button[starts-with(@id, 'single_button')]")
    

最新更新