-2

Jsoup を使用してproductId値 (6030283523) を取得するにはどうすればよいですか? それを行う別の方法はありますか?

私はしようとしています

Elements dis = doc.select("dl[class=cs-cfg] > dt").get(4).getAllElements();
for (Element el : dis) {
System.out.println(el.text());
}

<div id="cs-cfg" style="display: none" class="notranslate">
  <dl class="cs-cfg">
    <dt>retailerId</dt><dd>8892574b</dd>
    <dt>locale</dt><dd>BR</dd>      
    <dt>storeId</dt><dd>passarelaFeminino</dd>
                <dt>excludeDefaultStore</dt><dd>true</dd>
                <dt>view</dt>
                <dd>
                  <dl>
                    <dt>productId</dt><dd>6030283523</dd>
                    <dt>category</dt><dd>Scarpin</dd>
                    <dt>brand</dt><dd>CRAVO E CANELA</dd>
                  </dl>
                </dd>

        </dl>
</div>
4

1 に答える 1

0

代わりにこれを試してください:

Elements dis = doc.select("dd > dl > dd").get(0).getAllElements();
for (Element el : dis) {
    System.out.println(el.text());
}

これはnullになる可能性があることに注意してください。また、要素が移動した場合、これは機能しません。

セレクターのドキュメントも参照してください: http://jsoup.org/cookbook/extracting-data/selector-syntax

于 2013-04-08T17:22:27.500 に答える