0
我想解析HTML文本以獲取關鍵字後的特定值。以下代碼爲例:如何使用JSoup獲取特定值?
<table>
<tr>
<td class="odd">TW-Central</td>
<td class="odd">$3.8600</td>
<td class="odd">$3.8600</td>
<td class="odd">$3.8600</td>
<td class="odd red">-0.0168</td>
<td class="odd right">42,500</td>
<td class="odd right">7</td>
</tr>
<tr>
<td class="even">Waha</td>
<td class="even">$3.9600</td>
<td class="even">$3.8800</td>
<td class="even">$3.9196</td>
<td class="even red">-0.0436</td>
<td class="even right">69,500</td>
<td class="even right">17</td>
</tr>
<tr>
<td class="odd">White River Hub</td>
<td class="odd">$3.8200</td>
<td class="odd">$3.7975</td>
<td class="odd">$3.8088</td>
<td class="odd red">-0.0184</td>
<td class="odd right">81,200</td>
<td class="odd right">13</td>
</tr>
</table>
在找到關鍵字Waha後,我將如何獲得它下面的價格並返回它? 任何幫助將非常感激。我還使用STS在Java中編寫了這個代碼,如果JSoup不是最好的實現方法,那麼使用什麼建議也將非常感謝!謝謝!
重要的是,HTML代碼需要有效。在你的例子中,它缺少表格標籤 – sandrozbinden 2014-09-02 20:00:27
sandrozbiden Ok真棒這是有道理的,謝謝!問題是,如果表格格式不會改變,並且名稱「Waha」不會改變,那麼只有它的值。此代碼是否仍然有效? 例如,如果價格每天都會更新,我如何獲得新的和未知的價值? – Cris 2014-09-02 20:11:57
如果表格不會改變,那麼您可以始終使用命令tdElements.get(1).text()獲取第一個價格。但是,當然,您需要始終解析完整的html Jsoup.parse(html.toString()),然後在想要查看更改時選擇td。當你的html稍微大一些(裏面有其他表格)時,我們需要找到一個更好的過濾器。 – sandrozbinden 2014-09-02 20:16:23