2016-05-24 9 views
0

私はJsoupといくつかの、おそらく簡単な問題を抱えているJsoup複数のクラス

私が解析したい

ページ:

<div id="d4861771" class="q post"> 
<div class="bar"> 
    <div class="right"> 
    27 kwietnia 2016 08:02 
    </div> 
    <a class="qid click" href="/4861771/">#4861771</a> 
    <a class="click votes rox" rel="nofollow" href="/rox/4861771/">+</a> 
    <span class=" points">614</span> 
    <a class="click votes sux" rel="nofollow" href="/sux/4861771/">-</a> 
    <span class="msg">&nbsp;</span> 
</div> 
<div class="quote post-content post-body"> 
    &lt;gadus&gt; te nowe windowsy są do dupy 
    <br> &lt;gadus&gt; pasjans ma licznik gier 
    <br> &lt;gadus&gt; to tak jakby wbudowane przypominanie o tym jak bardzo marnujesz czas 
</div> 
</div> 

を、今私はそれから、日付、ポイントや変数でそのコンテンツを必要とするが、私は見当がつかないそれらを異なる変数にどうやって得るか。

27 kwietnia 2016 08:02 #4861771 + 614 - <gadus> te nowe windowsy są do dupy <gadus> pasjans ma licznik gier <gadus> to tak jakby wbudowane przypominanie o tym jak bardzo marnujesz czas 

を、ちょうど正規表現、それが、私は良いアイデアがあると思います。

私の考えは.textセクションからすべてを取得した() は、私が持っています。

私の出力は次のようになります。

Data: 27 kwietnia 2016 08:02 
Points: 614 
Content: <gadus> te nowe windowsy są do dupy<...> 

私はそれを得ました!

Elements idd = doc.select("div.q"); 

for(Element abc : idd){ 
    System.out.println(abc.getElementsByClass("points").text()); 
    System.out.println(abc.getElementsByClass("quote").text()); 
    System.out.println(abc.getElementsByClass("right").text()); 
} 

ここでこの投稿を削除する必要がありますか?

+0

質問を削除するかどうかは自由です。しかし、問題自体に解決策を追加しないでください。実用的なソリューションを投稿したい場合は、回答として投稿してください。 – fabian

答えて

0

あなたはこのような何かを行うことができます。

Document doc = Jsoup...... 
String data = doc.select(".right").first().text(); 
String points = doc.select(".points").first().text(); 
String content = doc.select(".post-content").first().text(); 

あなたはselect呼び出しがいくつかの要素を見つけることを確認するためにいくつかのチェックを追加することも、そうでない場合は、text()NullPointerExceptionをスローします。

+0

ありがとうございます!私は似たような考えを見つけました(最初の記事を編集)。 – jodekpotasu