首页 > 解决方案 > 通过子字符串在 selenium 中查找元素

问题描述

我正在用 selenium 编写 java 代码,但我被卡住了。我必须通过ID查找元素,元素的Id是这样"msi_num_create-copy"的(num每次都在变化),有没有办法通过Id的一部分找到元素?

标签: javaseleniumselenium-webdriverfindelement

解决方案


是的,您需要使用 css 选择器或 xpath :

XPATH 将是:

//*[contains(@id, '_create-copy') and starts-with(@id, 'msi')]

并像这样使用它:

WebElement someEle = driver.findElement(By.xpath("//*[contains(@id, '_create-copy') and starts-with(@id, 'msi')]"));
someEle.click(); or someEle.sendKeys("some string");

推荐阅读