我正在尝试使用 == $0 检索元素的文本。我尝试使用 JS 注入(inject)
((JavascriptExecutor) driver).executeScript("return arguments[0].value", driver.findElement(By.cssSelector("div.settings span")))
但是这种方法对我返回 NULL
最佳答案
由于文本Shooting 和Pedestrian Accident 位于文本节点 的元素内,因此要提取文本,您可以使用以下解决方案:
WebElement myElement = driver.findElement(By.cssSelector("div.settings"));
//extracting Shooting
System.out.println(((JavascriptExecutor)driver).executeScript("return arguments[0].firstChild.textContent;", myElement).toString());
//extracting Pedestrian Accident
System.out.println(((JavascriptExecutor)driver).executeScript("return arguments[0].lastChild.textContent;", myElement).toString());
关于javascript - 如何使用 Selenium WebDriver 和 Java 从元素中检索文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55699041/