我发现了其他寻找label text的问题,但我之后发现的是标签后的文字。
例如,我有一段代码:
<p>
<label>My awesome name:</label>
"Mark Mayo"
</p>
我的理解是,如果我想要标签,我可以使用XPath查询,例如:
//label[text()='My awesome name:']
查看标签是否存在,但我不确定如何访问不在标签内的纯文本,而是取而代之的。
建议?
答案 0 :(得分:1)
类似(我使用Java语法)
public String getNodeTextContent(WebElement node) {
String nodeContent = node.getAttribute("textContent");
List<WebElement> childs = node.findElements(By.xpath("*"));
if (childs.size() == 0) {
return allContent;
}
for (WebElement child : childs) {
nodeContent = nodeContent.replace(child.getAttribute("textContent"), "");
}
return nodeContent;
}
它基本上只是从节点内容中删除节点的所有直接子节点的文本内容,这应该只留下节点的真实内容。