2011-10-18 17 views
0

別のdivクラス内のdivクラスからhrefを抽出しようとしています。私が使用しようとしていますコードスニペットの一例は次のとおりです。他のdivクラス内からdivクラスをjsoupで抽出しています

<div class="productData"> 
      <div class="productTitle"> 
      <a href="http://rads.stackoverflow.com/amzn/click/0786866020"> Fish! A Remarkable Way to Boost Morale and Improve Results</a> 
      <span class="ptBrand">by <a href="/Stephen-C.-Lundin/e/B001H6UE16">Stephen C.  Lundin</a>, <a href="/Harry-Paul/e/B001H9XQJA">Harry Paul</a>, <a href="/John- Christensen/e/B003VKXJ04">John Christensen</a> and Ken Blanchard</span> 
      <span class="binding"> (<span class="format">Hardcover</span> - Mar. 8, 2000) </span> 
      </div> 

私はしかし、コードを使用して、この例からinnterクラスproductTitleを抽出しようとしています:

Document doc = Jsoup.connect(fullST).timeout(10*1000).get(); 
      Element title = doc.getElementById("div.productTitle"); 
      System.out.println(title); 

私はnullを取得します。

Element title = doc.getElementById("div.productData"); 

また、次のような上位要素を抽出しようとしています。私は多くのコードの組み合わせを試しましたが、内部divクラスまたは内部IDから抽出する構文を理解することはできません。

ご協力いただければ幸いです。

答えて

1

getElementById()を使用してIDで要素を選択しようとしています。これは間違っています。これらのdivにはIDがありません。代わりに、クラス名があります。代わりにselect()メソッドを使用する必要があります。

Element title = doc.select("div.productTitle").first(); 

classnameセレクタは必ずしも単一の要素を返すわけではありません。ドキュメントには複数のものが存在する可能性があります。私はあなたが最初に唯一のが必要なので、私はfirst()の呼び出しを追加したと仮定します。

関連する問題