如何仅从根元素java.com.gargoylesoftware.htmlunit.html提取文本内容
使用com.gargoylesoftware.htmlunit.html,我找不到任何方法仅从根元素提取文本内容。 以下是一些例子:如何仅从根元素java.com.gargoylesoftware.htmlunit.html提取文本内容,java,html,web-scraping,htmlelements,Java,Html,Web Scraping,Htmlelements,使用com.gargoylesoftware.htmlunit.html,我找不到任何方法仅从根元素提取文本内容。 以下是一些例子: <td> W 03:10 PM-04:25 PM <strong> <br> Hybrid (50%+ in-person) </strong> </td> 输出: W 03:10 PM-04:25 PMHybrid (50%+ in-person) 期望输出: W 0
<td>
W 03:10 PM-04:25 PM
<strong>
<br>
Hybrid (50%+ in-person)
</strong>
</td>
输出:
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语法编辑了我的答案。在获取文本内容之前,您可以尝试删除子节点
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语法编辑了我的答案,哇,非常感谢!尽管代码语法有点不正确,但我还是使用了按标记名删除子节点的相同想法!这太棒了,非常感谢来自javascript世界的我。我只是有这个想法。你能用正确的语法编辑我的答案吗。谢谢,哦,对不起,我是新来StackOverFlow问这个问题的。我接受了你的回答!另外,如果你能为以后可能有这个问题的人提供正确的语法。对,这是重要的部分。哇,非常感谢!尽管代码语法有点不正确,但我还是使用了按标记名删除子节点的相同想法!这太棒了,非常感谢来自javascript世界的我。我只是有这个想法。你能用正确的语法编辑我的答案吗。谢谢,哦,对不起,我是新来StackOverFlow问这个问题的。我接受了你的回答!另外,如果你能为以后可能有这个问题的人提供正确的语法,这是很重要的。