1

まず、ページのエロティックな内容で申し訳ありませんが、それを見過ごしてください。ページ自体の問題ではありません。

このページから何かの価格を取得しようとしています: JSFiddle

67行目には「Adviesprijs:」と表示されています。tdその後、次の値が必要です。ところで、これはベルギーの税金です。

例: 文字列としての「19.95」

JSoup を使用してこのコンテンツを取得するにはどうすればよいですか?

これは私がこれまでに持っているものです:

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

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

しかし、うまくいきません。

4

1 に答える 1

0

これにはセレクターを使用する方がよいでしょう。

/* 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)

于 2013-03-03T01:20:06.460 に答える