1

htmlunitを使用してWebページから画像を取得しました。私はhtmlunitの初心者です。コーディングしましたが、画像の取得方法がわかりません。以下は私のコードです。

import java.io.*;
import java.net.URL;
import com.gargoylesoftware.htmlunit.BrowserVersion;
import com.gargoylesoftware.htmlunit.WebClient;
import com.gargoylesoftware.htmlunit.html.HtmlPage;

public class urlscrap {

    public static void main(String[] args) throws Exception 
    {

        //WebClient webClient = new WebClient(Opera);
        WebClient webClient = new WebClient();
        HtmlPage currentPage = (HtmlPage) webClient.getPage(new URL("http://www.google.com"));

        System.out.println(currentPage.asText());
        //webClient.closeAllWindows();      

    }
}
4

3 に答える 3

5

これはあなたのために働きますか??

import java.net.URL;
import java.util.List;

import com.gargoylesoftware.htmlunit.WebClient;
import com.gargoylesoftware.htmlunit.html.HtmlImage;
import com.gargoylesoftware.htmlunit.html.HtmlPage;

public class urlscrap {

    public static void main(String[] args) throws Exception 
    {

        //WebClient webClient = new WebClient(Opera);
        WebClient webClient = new WebClient();
        HtmlPage currentPage = (HtmlPage) webClient.getPage(new URL("http://www.google.com"));
      //get list of all divs
        final List<?> images = currentPage.getByXPath("//img");
        for (Object imageObject : images) {
            HtmlImage image = (HtmlImage) imageObject;
            System.out.println(image.getSrcAttribute());
        }
        //webClient.closeAllWindows();      
    }
}
于 2012-04-11T03:51:33.980 に答える
0

ページのテキストを取得しているように見えますが、これが実際の最初のステップです。あなたの質問は何ですか?ページ内で参照されているすべての画像を見つけるのに問題がありますか? Java で DOM 解析を行う方法を調べ、それを使用してページからすべての img タグを抽出することをお勧めします。

于 2012-04-11T03:11:02.377 に答える
0

言語を切り替えても構わない場合は、Python のScrapyをお勧めします。これは、画像を含む Web コンテンツをスクレイピングするためにこれまで使用した中で最高のフレームワークです (自動的にサムネイルを作成することもできます)。個人的には、そのようなタスクには Java を使用しません。

于 2012-04-11T03:26:23.590 に答える