1

私はこの方法でこのコードの結果を取得しようとしています:

タイトル: ベン10 アルティメット エイリアン

コメント:taseen_shafquattaseen_shafquat : このシリーズのシーズン 4 はありますか?

タイトル:アキラ

コメント: dragon3476dragon3476 : 私の最もお気に入りのアニメーションの 1 つで、素晴らしい作品で、私の 300 回目の時計についてですが、当時のオリジナルのポスターと DVD と vid、さらには T シャツもまだ手に入れているので、悪いことは何も言えませんでした。このような素晴らしいアニメーションについて 5/5

しかし、代わりに次のように取得します。

タイトル: ベン10 アルティメット エイリアン

タイトル: taseen_shafquattaseen_shafquat : このシリーズのシーズン 4 はありますか

タイトル:アキラ

タイトル: dragon3476dragon3476 : 私の最もお気に入りのアニメーションの 1 つで、素晴らしい作品で、私の 300 回目の時計についてですが、当時のオリジナルのポスターと DVD と vid、さらには T シャツもまだ手に入れているので、悪いことは何も言えませんでした。このような素晴らしいアニメーションについて 5/5

コード

import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.nodes.Node;
import org.jsoup.select.Elements;

import java.io.*;
import java.util.List;

public class WebScraper {

    public static void main(String[] args) throws Exception {
        String url = "http://www.1channel.ch/latest_comments.php";
        Document doc = Jsoup.connect(url).get();
        for (Element E : doc.select("div.latest_comments > a, div.latest_comments > p")) {

         System.out.print("title: "+ E.getElementsByTag("a").text());
         System.out.println(  E.getElementsByTag("p").text());
          //    System.out.println(T);
            System.out.print("\n");

            try 
            {
            PrintWriter out = new PrintWriter(new BufferedWriter(new FileWriter("/Users/samualdoku/Desktop/Twitter/scraped.txt", true)));
            out.println(E.text());
            out.close();
             } catch (IOException e) {
            }  
        }

    }

}

そして、これは私がこすり取ろうとしているhtmlです。href内のタグに問題があると思いますspan。コメント投稿者のユーザー名が含まれています。getElementsByTag("a")タイトルがアンカータグ内にあるため、タイトルを呼び出しました。span タグを削除するにはどうすればよいですか。これは、ユーザー名の前にタイトルが表示されてはならないためです。

 <div class="latest_comments com_class_tv">
    <a href="/tv-2733767-Dallas/season-1-episode-3">Dallas</a>
    ( 6 minutes ago )
    <p>
        <span class="latest_comments_poster">
          <a href="/profile/jowar">jowar</a>
          :
        </span>
        i just started watchin...eeing as its 34nyrs old
    </p>
</div>
4

1 に答える 1

0

これを試して

public static void main(String[] args) throws Exception {
 String url = "http://www.1channel.ch/latest_comments.php";
 Document doc = Jsoup.connect(url).get();
 for (Element E : doc.select("div.latest_comments)) {

  System.out.print("title: "+ E.select("a").text());
  System.out.println("comment: " + E.select("p").text());

 }
}
于 2012-06-21T10:37:13.810 に答える