[英]How to extract text with Jsoup from table
也許有人可以幫助我使用jsoup從html中提取信息?
所需信息是23.90
<tr>
<td class="leftcell" valign="top">
<div onclick=
"ShowHideTravelDetails('bookingPrice_TaxesToggleBox',
'bookingPrice_TaxesToggleIcon', '/Images');" class="productheader">...</div>
</td>
<td class="rightcell emphasize" align="right"
valign="bottom">$23.90</td></tr>
我可以在html doc中的幾個地方看到它。 我試過用了
Elements taxes = doc.select("td.rightcell.emphasize");
但它不起作用。
還嘗試從表中提取信息:
Elements table = doc.select("table[class=selectiontable]");
Elements rows = table.get(0).select("td[class^=rightcell emphasize]");
for (Element row : rows) {
Elements tds = row.select("td");
System.out.println(tds.get(13));
試試這樣我假設你有這樣的代碼。 您需要執行嵌套級別迭代才能獲得結果。
public class Test {
public static void main(String[] args) {
String html ="<table class=\"selectiontable\">\n" +
"<tr>\n" +
" <td class=\"leftcell\" valign=\"top\">\n" +
" <div onclick=\n" +
" \"ShowHideTravelDetails('bookingPrice_TaxesToggleBox', \n" +
"'bookingPrice_TaxesToggleIcon', '/Images');\" class=\"productheader\">...</div>\n" +
"</td>\n" +
"<td class=\"rightcell emphasize\" align=\"right\" \n" +
"valign=\"bottom\">$23.90</td></tr>\n" +
"</table>";
Document document = Jsoup.parse(html);
Elements elements = document.select(".selectiontable");
for (Element element :elements){
for (Element row : element.select("tr")) {
Elements tds = row.select("td");
if (tds.size() > 1) {
System.out.println(tds.get(1).text());
}
}
}
}
}
輸出:
$23.90
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.