Selenium:使用 span class 名称访问元素

Selenium: access element using span class name

我有这个很复杂xpath

/html/body/div/div/div[2]/div/div/div/div[3]/div/table[1]/tbody/tr/td/table/tbody/tr/td/table/tbody/tr/td/table/tbody/tr/td[1]/table/tbody/tr/td/table/tbody/tr[1]/td/div/div/table/tbody[1]/tr[3]/td[2]/div/table/tbody/tr/td/table/tbody/tr/td[1]/span/input

跨度有这个class="z-combobox-designation z-combobox"

我需要使用 class 而不是通过 xpath 访问 span 元素。 cssSelector 可以吗?有人可以提示我该怎么做吗?

是的,您可以使用 css select 或以这种方式 select 您的元素基于化合物 类

driver.findElement(By.cssSelector(".z-combobox-designation.z-combobox"));

或使用 类 指定标签名称,如 span.z-combobox-designation.z-combobox

如果您的 HTML 中有不止一个相同类型的元素,那么请考虑它的唯一父级并找到相同的

例如您的元素的父元素 table 具有唯一 ID,例如所以你可以考虑table标记拳头并根据table定位span例如

table#someid span.z-combobox-designation.z-combobox