首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >选择并迭代所有元素

选择并迭代所有元素
EN

Stack Overflow用户
提问于 2011-08-12 14:22:48
回答 3查看 48.5K关注 0票数 29

我将通过jsoup连接到一个url,并获得它的所有内容,但问题是如果我选择like,

代码语言:javascript
复制
doc.select("body")

它返回单个元素,但我希望获取页面中的所有元素并逐个迭代它们,例如,

代码语言:javascript
复制
<html>
<head><title>Test</title></head>
<body>
<p>Hello All</p>
<a href="test.html">Second Page</a>
<div>Test</div>
</body>
</html>

如果我选择使用body,我将在一行中得到结果,例如,

代码语言:javascript
复制
Test Hello All Second Page Test

相反,我希望选择所有元素并逐个迭代,并产生如下结果:

代码语言:javascript
复制
Test
Hello All
Second Page
Test

使用jsoup可以做到这点吗?

谢谢,

卡尔蒂克

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-08-12 20:18:34

您可以使用*选择器选择文档的所有元素,然后使用Element#ownText()分别获取每个元素的文本。

代码语言:javascript
复制
Elements elements = document.body().select("*");

for (Element element : elements) {
    System.out.println(element.ownText());
}
票数 58
EN

Stack Overflow用户

发布于 2014-10-20 22:31:23

使用jsoup库获取文档体中的所有元素。

doc.body().children().select("*");

只获取文档体元素中的第一级元素。

doc.body().children();

票数 2
EN

Stack Overflow用户

发布于 2011-08-12 18:05:39

您可以使用XPath或任何包含XPath的库

表达式为//text()

使用xml here测试表达式

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7036332

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档