我正在使用 JSOUP 从给定的 URL 中提取一些信息。我的目标是获取所有具有最小宽度 W 和最小高度 H 的图像 URL。
问题是许多网站只使用src
但没有height
属性width
。所以我发现的唯一解决方案是用来BufferedImage
获取图像的图像高度和宽度,但我认为如果你有大量图像,这不是一个好的选择
是否有其他方法可以在不先创建图像的情况下获取图像的高度和宽度。
尝试这个:
String location = "http://www.sxc.hu/pic/l/f/fa/fangol/1301370_97011830.jpg";
InputStream stream = new URL(location).openStream();
Object obj = ImageIO.createImageInputStream(stream);
ImageReader reader = ImageIO.getImageReaders(obj).next();
reader.setInput(obj);
System.out.println(reader.getWidth(0));
stream.close();
Run Code Online (Sandbox Code Playgroud)
这在每个 jdk 中读取宽度和高度时都是高效的。