繁体   English   中英

如何从 web 页中抓取图像?

[英]How to scrape the images from web pages?

我使用 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();      

    }
}

这对你有用吗??

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();      
    }
}

看起来您正在获取页面的文本,这确实是第一步。 你有什么问题? 您是否在查找页面中引用的所有图像时遇到问题? 我建议在 Java 中查找如何进行 DOM 解析,并使用它从页面中提取所有 img 标签。

如果你不介意切换语言,那么我会推荐 Python 的scrapy 这是迄今为止我用来抓取 web 内容(包括图像)的最佳框架(它甚至可以自动为您创建缩略图)。 就个人而言,我不会将 java 用于此类任务。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM