0

Java Servlet を使用して Web ページからデータをスクレイピングしようとしましたが、ページが圧縮されていることがわかりました。そのため、URLConnection を作成すると、zip ファイルをダウンロードするように呼び出されます。

誰でもこれで私を助けることができますか?実際には、このような数千のページにアクセスし、DOM を使用してテーブル データを解析し、データベースに入力してテキスト ワードの一部をクエリし、結果を表示します。そのため、これによりプロセスが遅くなりすぎるのではないかと考えていました。

ファイルをダウンロードせずにこれを行う方法はありますか? どんな提案でも大歓迎です。ありがとう。

try{

        URL url = new URL("example.html.gz");
        URLConnection conn = url.openConnection();

         //FileInputStream instream= new FileInputStream(???What do I enter???);
         //GZIPInputStream ginstream =new GZIPInputStream(instream);
        conn.setAllowUserInteraction(false);
        InputStream urlStream = url.openStream();
        BufferedReader buffer = new BufferedReader(new InputStreamReader(urlStream));

        String t = buffer.readLine();
        while(t!=null){
            temp = temp + t ;
            t = buffer.readLine();
        }
4

1 に答える 1

2

Can you try this:

GZIPInputStream ginstream =new GZIPInputStream(conn.getInputStream());

The rest is same as your code.

于 2013-05-24T21:33:28.790 に答える