【发布时间】:2012-03-01 03:11:41
【问题描述】:
我想做的事情对我来说似乎很简单,但我的努力远远超出了我应该做的。我有一份文件,其中包含以下内容:
<h2>First Heading</h2>
<table>
<div class="title">First Subheading One</div>
<div class="title">First Subheading Two</div>
<div class="title">First Subheading Three</div>
</table>
<h2>Second Heading</h2>
<table>
<div class="title">Second Subheading One</div>
<div class="title">Second Subheading Two</div>
<div class="title">Second Subheading Three</div>
</table>
<h2>Third Heading</h2>
<table>
<div class="title">Third Subheading One</div>
<div class="title">Third Subheading Two</div>
<div class="title">Third Subheading Three</div>
</table>
使用 doc.select("h2") 给了我所有的标题,正如预期的那样。使用 doc.select("div.title") 给了我所有的副标题,也如预期的那样。我要做的是遍历返回的 h2 元素,然后在其中遍历返回的 div.title 元素-我尝试了很多东西,而且我对编码一点也不陌生(jsoup 的新手,但是)但我似乎无法理解如何做到这一点。
Headings = httpDoc.select("h3");
for(Element Headings : heading) {
// something with heading.nextSibling here
}
应该有什么我可以做的(例如nextSibling)给我节点吗?从那里我可以做另一个 select("div.title") 并遍历那些以获取子标题?
或者我是完全错误的方式吗?如果这看起来很愚蠢,我深表歉意——感觉有点愚蠢,因为我编码的时间比我愿意承认的要长,但从来没有处理过 DOM(一直是 Win32 人。)
【问题讨论】:
标签: jsoup