5

Jsoupを使用して、次のHTMLスニペット内の段落を選択しようとしています。

<div class="abc ">
<p class="de">Very short paragraph.</p>
</div>

そのために、私は次のJavaコードスニペットを使用しています。

Elements divs = document.select("div[class=abc ]");
for (Element div : divs) {
  Log.v("iwashere", String.format("div[class=abc ]"));
  Elements ppp = document.select("p[class=de]");                   
  for (Element p : ppp) {
    Log.v("iwashere", p.text());
    break;                                                
  } 
}

問題は、何らかの理由で、Jsoupが「div [class = abc]」(Log.v( "iwashere")がログに表示されない)を取得していないように見えることです。

当初、トレーリングスペースが問題になるのではないかと思ったので、試してみました

Elements divs = document.select("div[class=abc]");

しかし、それも役に立ちませんでした。

上記のコードの問題は何でしょうか?

4

2 に答える 2

5

jsoupはcssセレクターを使用します。「div.abc」を使用します。これは、abcのクラスを持つdivを意味します。

Element divs = document.select("div.abc");
于 2011-04-07T04:47:23.280 に答える
1

"abc* _ *" ("_" は空白)の末尾の空白にはバグがあります。

要素 divs = document.select("div[class=abc ]");

そのため、css セレクター (div.abc) を使用しています。

于 2011-04-20T11:42:48.617 に答える