1
我正在嘗試使用JSoup解析HTML文檔。我想要做的是提取特定行的表格數據。我希望能夠使用href屬性的值或<a></a>
標記的值來選擇所述行。基於行數據從表格行提取值 - JSoup
<tbody>
<tr class="even">
<td><a href="link-1">Link_1</a></td>
<td align="center">9</td>
<td align="center">9</td>
<td align="center">2</td>
</tr>
<tr class="odd">
<td><a href="link-2">Link_2</a></td>
<td align="center">22</td>
<td align="center">4</td>
<td align="center">1</td>
</tr>
<tr class="even">
<td><a href="link-3">Link_3</a></td>
<td align="center">22</td>
<td align="center">7</td>
<td align="center">1</td>
</tr>
</tbody>
選擇整個表是容易的,我就可以使用以下方法:
Document htmlRawData = Jsoup.parse(deviceMetricData.toString());
Elements htmlMetrics = htmlRawData.select("tbody > tr > td[align]");
htmlMetrics.stream().forEach((ele) -> {
System.out.println(ele.toString());
});
這是隻有永遠的理想,當表一行。如果它有很多,那麼根據第一個單元格的值選擇一個特定的行變得更加棘手。
任何人都可以幫助我開始或指向正確的方向嗎?
我不太清楚你想要什麼。你能給出一個你想從該表中提取的輸出的例子嗎?有兩個明顯的選擇:選擇所有的第一個單元格,然後遍歷它們,按索引選擇行;將所有表數據選擇到Java數據結構中,並像往常一樣使用循環進行過濾。 (我至少在幾個小時內回答你的問題,但添加示例輸出將幫助每個試圖回答的人。) –