关于特定表数据的Jsoup

时间:2013-03-02 21:10:13

标签: java html jsoup html-table

首先,我对页面的色情内容感到抱歉,但看过去,它不是关于页面本身。

我正在尝试从此页面获取某些内容的价格:JSFiddle

在第67行显示“Adviesprijs:”,之后我需要下一个td的值,没有btw的东西(如果你想知道这是比利时的税)

例如:“19.95”作为字符串

如何使用JSoup获取此内容?

这是我到目前为止所做的:

Element element = doc.getElementById("productdetails");

if (element.text().contains("Adviesprijs:")) { 
   String price = element.parent().ownText(); 
   System.out.println(price); 
} 

虽然不起作用。

1 个答案:

答案 0 :(得分:0)

你最好使用selector

/* select all tags with "Adviesprijs:" text */
Elements result = doc.select("*:containsOwn(Adviesprijs:)");

/* iterate over all elements found */
for( Element e : result )
{
    String key = e.text(); /* "Adviesprijs:" */
    String value = e.nextElementSibling().text(); /* text of next element */

    System.out.println(key + "\t" + value);
}

打印:Adviesprijs: € 19,95 (incl. 21% btw)