我是jsoup的初学者,我的html文档看起来像这样:
<div class="myclass">
<ul>
<li style="width: 32%;border-right: 1px solid #ddd;"><img src="image.png"<br>val </li>
<li><img src="/vinfo/imgFiles/no.png"><br>val2 </li>
<li><img src="/vinfo/imgFiles/no.png"><br>val3 </li>
<li class="noborder" style="border: 0px;"><img src="/vinfo/imgFiles/in-the-wild.png"><br>val4 </li>
</ul>
</div>
&#13;
我想选择每个<li>
元素的值,但是所有元素都一次存储在元素中(jsoup);这是我尝试在存储到列表中之前测试输出的内容:
Elements elt = page.select("div.iconDetails > ul");
int = 0;
for (Element el : elt){
System.out.println(el.select("li"));
i++;
System.out.println(i);
}
结果如下:
<li style="width: 32%;border-right: 1px solid #ddd;"><img src="/vinfo/imgFiles/trojan.png"><br>val </li>
<li><img src="/vinfo/imgFiles/no.png"><br>val1</li>
<li><img src="/vinfo/imgFiles/no.png"><br>val2 </li>
<li class="noborder" style="border: 0px;"><img src="/vinfo/imgFiles/in-the-wild.png"><br>val3 </li>
1
&#13;
我想拥有的是:
<li style="width: 32%;border-right: 1px solid #ddd;"><img src="/vinfo/imgFiles/trojan.png"><br>val </li>
1
<li style="width: 32%;border-right: 1px solid #ddd;"><img src="/vinfo/imgFiles/trojan.png"><br>val </li>
2
<li style="width: 32%;border-right: 1px solid #ddd;"><img src="/vinfo/imgFiles/trojan.png"><br>val </li>
3
<li class="noborder" style="border: 0px;"><img src="/vinfo/imgFiles/in-the-wild.png"><br>val3 </li>
4
计数器只是为了确保我有4个结果。
答案 0 :(得分:2)
试试这段代码:
Elements elts = page.select("div.iconDetails > ul > li");
for (int i= 0; i<elts.size();i++){
Element elt = elts.get(i);
System.out.println(elt.text());
}
答案 1 :(得分:1)
所以我只需选择&#34; ul&gt; li&#34;像这样:
Elements elt = page.select("div.iconDetails > ul > li");
int = 0;
for (Element el : elt){
System.out.println(el);
i++;
System.out.println(i);
}
它就像一个魅力