如何仅从根元素提取文本内容-java,com.gargoylesoftware.htmlunit.html



我找不到任何方法,只能使用com.gargoylesoftware.htmlnunit.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之前尝试删除子节点。

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();
}

我用@XYZ 提供的Java语法编辑了我的答案

相关内容

  • 没有找到相关文章

最新更新