Jsoup 选择并迭代所有元素
我将通过 jsoup 连接到一个 url 并获取它的所有内容,但问题是如果我选择 like,
doc.select("body")
它返回一个元素,但我想获取页面中的所有元素并逐一迭代它们,例如,
<html>
<head><title>Test</title></head>
<body>
<p>Hello All</p>
<a href="test.html">Second Page</a>
<div>Test</div>
</body>
</html>
如果我选择使用 body,我在一行中得到结果,例如,
Test Hello All Second Page Test
相反,我想选择所有元素并逐一迭代并生成结果,例如,
Test
Hello All
Second Page
Test
使用 jsoup 可以吗?
谢谢,
卡蒂克
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
您可以使用 XPath 或任何包含 XPath 的库,
表达式为
//text()
使用 xml 这里
You can use XPath or any library which contain XPath
the expression is
//text()
Test the expression with your xml here
您可以使用
*
选择器选择文档的所有元素,然后使用Element#ownText()
单独获取每个元素的文本。You can select all elements of the document using
*
selector and then get text of each individually usingElement#ownText()
.使用 jsoup 库获取文档正文中的所有元素。
doc.body().children().select("*");
仅获取文档正文元素中的第一级元素。
doc.body().children();
To get all of the elements within the body of the document using jsoup library.
doc.body().children().select("*");
To get just the first level of elements in the documents body elements.
doc.body().children();