可以使用Java的Jsoup库来实现网页图片的爬取。以下是一个简单的示例代码:

import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
import java.io.BufferedInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.net.URL;
import java.net.URLConnection;

public class ImageCrawler {
    public static void main(String[] args) {
        String url = 'http://example.com'; // 替换为目标网页的URL
        
        try {
            Document doc = Jsoup.connect(url).get();
            Elements images = doc.select('img[src~=(?i)\.(png|jpe?g|gif)]'); // 通过CSS选择器选择图片元素
            
            for (Element image : images) {
                String imageUrl = image.absUrl('src');
                downloadImage(imageUrl); // 下载图片
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

    public static void downloadImage(String imageUrl) {
        try {
            URL url = new URL(imageUrl);
            URLConnection conn = url.openConnection();
            conn.connect();
            String fileName = url.getFile().substring(url.getFile().lastIndexOf('/') + 1);
            BufferedInputStream bis = new BufferedInputStream(conn.getInputStream());
            FileOutputStream fos = new FileOutputStream(fileName);

            byte[] buffer = new byte[1024];
            int count;
            while ((count = bis.read(buffer, 0, 1024)) != -1) {
                fos.write(buffer, 0, count);
            }

            fos.close();
            bis.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

在以上示例代码中,首先使用Jsoup库连接到指定的网页,然后使用CSS选择器选择所有的图片元素。接着,通过循环遍历这些图片元素,获取图片的URL,最后调用downloadImage方法将图片下载到本地。

请注意,以上代码仅提供了基本的爬取和下载图片的功能,并未包含异常处理和其他额外的功能。在实际应用中,你可能需要根据具体的需求进行修改和扩展。

Java网页图片爬取:使用Jsoup库抓取并下载图片

原文地址: https://www.cveoy.top/t/topic/p7j6 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录