我是 Android 编程的新手。我需要从HTML获取值并将其显示在列表中。 这是链接http://www.hak.hr/info/cijene-goriva/
- >所以我需要值(10,41,10.51)
<div id="div_eurosuper95">
<table class="nowrapper fuel_segmented">
<thead>
<tr>
<th>
Gorivo
</th>
<th>
Cijena (kn)
</th>
</tr>
</thead>
<tbody>
<tr>
<td class="fuel_name"><span class="vendorName">Tifon</span></br>euroSUPER 95 BS</td>
<td class="fuel_segmented">10,41</td>
</tr>
<tr>
<td class="fuel_name"><span class="vendorName">Tifon</span></br>EUROSUPER 95
BS CLASS</td>
<td class="fuel_segmented">10,51</td>
</tr>
<tr>
<td class="fuel_name"><span class="vendorName">Crodux derivati</span></br>EUROSUPER 95 BS</td>
<td class="fuel_segmented">10,41</td>
</tr>
<tr>
<td class="fuel_name"><span class="vendorName">AdriaOil</span></br>Euro Super 95 BS TOP</td>
<td class="fuel_segmented">10,51</td>
</tr>
</tbody>
</table>
</div>
答案 0 :(得分:1)
您可以使用Jsoup选择器选择属于<td>
类的所有fuel_segmented
标记。
Document doc = Jsoup.parse(html);
Elements fuel = doc.select("td.fuel_segmented");
这是一个基本的CSS选择器语法,td
指定标记,.
指定它是一个类。如果它是具有td
的特定id
,您可以将其指定为td#fuel_segmented
。
这将返回Element
个对象的集合,由Elements
对象表示。
为了让它更容易看出是什么,你可以遍历元素并显示相应的燃料名称。
Elements fuel = doc.select("td.fuel_segmented");
for (Element element : fuel) {
System.out.println(element.previousElementSibling().text()
+ ": " + element.text());
}
将输出
Tifon euroSUPER 95 BS: 10,41
Tifon EUROSUPER 95 BS CLASS: 10,51
Crodux derivati EUROSUPER 95 BS: 10,41
AdriaOil Euro Super 95 BS TOP: 10,51
我建议您阅读有关如何在Jsoup中使用选择器来解析所需数据的更多信息。可以找到食谱的那一部分here.
答案 1 :(得分:0)
要在ListView
中显示您的数据,可以使用good tutorial了解其工作原理。
我真的不知道你在哪里得到这些价格,在Jsoup
你有所有"Cookbooks"必要的,用例子解析html文件。