我找不到使用com.gargoylesoftware.htmlunit.html仅从根元素中提取文本内容的任何方法。这是一些示例:
<td>
W 03:10 PM-04:25 PM
<strong>
<br>
Hybrid (50%+ in-person)
</strong>
</td>
我想从根元素中提取文本内容(在这种情况下为“ td”,但它也从子元素中提取文本内容,这是我不希望的部分:
private void extractTextContent(HtmlElement htmlElement) {
String content = htmlElement.getTextContent();
System.out.println(content);
}
输出:
W 03:10 PM-04:25 PMHybrid (50%+ in-person)
期望的输出:
W 03:10 PM-04:25 PM
我已经尝试使用其他方法调用“ asText()”,但是这并没有给我想要的输出。使用com.gargoylesoftware.htmlunit.html找不到任何有相同问题的人。有什么方法/方法只能从根元素中提取文本内容?
编辑:谢谢你的回答。我使用删除子节点的相同想法来获得所需的输出。这是java的语法:
private void extractTextContent(HtmlElement htmlElement) {
DomNode child = htmlElement.getLastElementChild();
String tagname = "";
if(child != null) {
tagname = child.getTextContent();
htmlElement.removeChild(tagname, 0);
}
String content = htmlElement.getTextContent();
}
您可以在获取textContent之前尝试删除子节点。