<Title id ="10" name="Title">
Name
<span>:</span>
Shanthi --// dynamic value
</Title>
String s = driver.findElement(By.id('10')).getText();
预期:姓名 Shanthi
实际:姓名
如何获取全文?我也尝试了 getAttribute("innerHtml") 但没有用...
TIA
最佳答案
你能试试这个吗:
WebElement element = driver.findElement(By.xpath("//*[@id='10']"));
JavascriptExecutor js = (JavascriptExecutor)driver;
String firstname= (String) js.executeScript("return arguments[0].childNodes[0].textContent", element);
或
JavascriptExecutor js = (JavascriptExecutor)driver;
Object firstname= js.executeScript("var value = document.evaluate(\"//table[@id='10']/text()\",document, null, XPathResult.STRING_TYPE, null ); return value.stringValue;");
String Firstname=firstname.toString();
或安德鲁建议
String name = driver.findElement(By.xpath("//*[@id='10']")).getAttribute("innerHTML");
String[] items = html.split("<span .*?</span>");
关于java - 如何从跨度分隔的标签中获取动态文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62056576/