[英]Jsoup select elements after first element
i want to parse a html table with jsoup.我想用jsoup解析一个html表。
part of the html page i want to parse:我要解析的 html 页面的一部分:
<tr>
<td class="dkHeading">A1</td>
<td class="dkHeading">A2</td>
<td class="dkHeading">A3</td>
<td class="dkHeading">A4</td>
<td class="dkHeading">A5</td>
<td class="dkHeading">A6</td>
<td class="dkHeading">A7</td>
</tr>
<tr id="RContents">
<td class="dkTextCenter">B1</td>
<td class="dkTextCenter">B2</td>
<td class="dkTextCenter">B3</td>
<td class="dkTextLeft">B4</td>
<td class="dkTextCenter">B5</td>
<td class="dkTextCenter">B6</td>
<td class="dkTextCenter">B7</td>
</tr>
<tr>
<td class="dkTextCenter">C1</td>
<td class="dkTextCenter">C2</td>
<td class="dkTextCenter">C3</td>
<td class="dkTextLeft">C4</td>
<td class="dkTextCenter">C5</td>
<td class="dkTextCenter">C6</td>
<td class="dkTextCenter">C7</td>
</tr>
<tr>
<td class="dkTextCenter">D1</td>
<td class="dkTextCenter">D2</td>
<td class="dkTextCenter">D3</td>
<td class="dkTextLeft">D4</td>
<td class="dkTextCenter">D5</td>
<td class="dkTextCenter">D6</td>
<td class="dkTextCenter">D7</td>
</tr>
how can i select all "tr" elements after (and including) that tr with id "RContents"?我如何选择(包括)id 为“RContents”的 tr 之后的所有“tr”元素? i tried
doc.select("tr[id=RContents] > tr");
我试过
doc.select("tr[id=RContents] > tr");
but that did't work.但这没有用。
您可以使用下一个兄弟姐妹选择器~:
doc.select("tr[id=RContents] ~ tr");
you can select tr Elements
, then loop
through them.您可以选择
tr Elements
,然后loop
通过它们。 since the elements are in order you can try something like this:因为元素是有序的,你可以尝试这样的事情:
Document document = Jsoup.parse("YOURHTML");
Elements elements = document.select("tr");
boolean start=false;
for(Element e : elements){
if(e.hasAttr("id") && e.attr("id").equals("RContents"))){
start=true;
}
if(start){
//all tr elements including id=RContents and after
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.