这看起来像DOM:
<div class="content-section generic-section">
<div class="content-section generic-section">
<div class="content-section generic-section">
我需要从每个div元素中获取内容。使用select查询时,所有三个内容都在同一个变量中获取。如何解决这个问题。
答案 0 :(得分:0)
重新:
使用select查询时,所有三个内容都在同一个变量中获取。
所有三个都将被分配给Elements
的一个ArrayList
类型的实例,因此,为了查询这三个元素中的每一个,你可以
for (Element element : elements) { ... }
elements.get(0)
,elements.get(1)
等Elements
和prev()
next()
进行迭代
first()
或last()
traverse()
Elements
text
:elements.eachText()
答案 1 :(得分:0)
您可以使用select方法获取Elements对象。 正如@glyching所提到的,你可以遍历它。 我使用forEach创建了测试代码,如下所示。
public void test() {
Document doc = Jsoup.parse("<html><body><div class=\"content-section generic-section\">contents1</div><div class=\"content-section generic-section\">contents2</div><div class=\"content-section generic-section\">contents3</div></body></html>");
// get div elements
Elements elements = doc.select("div.content-section.generic-section");
// display "contents1" "contents2" "contents3"
elements.forEach(element -> System.out.println(element.text()));
}