Java获取html里面纯文本内容:不包括表格内容
时间: 2024-03-05 12:47:31 浏览: 21
可以使用Jsoup库来获取html中的纯文本内容。以下是一个获取html中纯文本内容且不包括表格内容的Java代码示例:
```java
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
public class HtmlParser {
public static void main(String[] args) {
String html = "<html><body><p>This is a paragraph</p><table><tr><td>Table cell</td></tr></table></body></html>";
Document doc = Jsoup.parse(html);
Element body = doc.body();
// 获取所有文本节点
Elements textNodes = body.select(":not(table) > *").not("table *").not("table");
for (Element textNode : textNodes) {
System.out.println(textNode.text());
}
}
}
```
上述代码中,我们首先使用Jsoup.parse()方法将html字符串解析为Document对象,然后通过doc.body()方法获取body元素。接着,我们使用选择器":not(table) > *"来选择body元素下所有不是table元素的子元素,再通过not("table *")和not("table")方法进一步过滤掉包含在表格中的元素和表格元素本身。最后,我们使用text()方法来获取文本内容。