Java 无法从url获取图像
我正在尝试从宽度和高度大于249的url获取图像 我试图从这个url获取图像Java 无法从url获取图像,java,jsoup,Java,Jsoup,我正在尝试从宽度和高度大于249的url获取图像 我试图从这个url获取图像http://imgur.com/gallery/zwxxH8T “”它正在从少数url获取图像,但为什么这不是从所有给定url获取图像 我正在使用以下代码 public static void main(String[] args) { try { String path = "http://imgur.com/gallery/zwxxH8T"; Syst
http://imgur.com/gallery/zwxxH8T
“”它正在从少数url获取图像,但为什么这不是从所有给定url获取图像
我正在使用以下代码
public static void main(String[] args) {
try {
String path = "http://imgur.com/gallery/zwxxH8T";
System.out.println("Fetching %s..." + path);
try {
URL url = new URL(path);
} catch (MalformedURLException e) {
System.out.println("MalformedURLException");
}
Document doc = Jsoup.connect(path).timeout(5000).get();
Elements media = doc.select("[src]");
int width = 0;
int height = 0;
for (Element src : media) {
if (src.tagName().equals("img")) {
try {
width = Integer.parseInt(src.attr("width"));
height = Integer.parseInt(src.attr("height"));
} catch (NumberFormatException ex) {
}
if ((width > 249) && (height > 249)) {
System.out.println("Path: " + src.attr("abs:src")
+ "\n wd " + src.attr("width") + " hi " + src.attr("height"));
}
}
}
} catch (org.jsoup.UnsupportedMimeTypeException e) {
System.out.println("Exception " + e);
} catch (IOException e) {
System.out.println("Exception " + e);
}
}
在给定的url中,没有
包含宽度和高度属性
因此
width
和height
始终等于0,如果((width>249)和&(height>249))
始终为false,则找不到图像。如果您只想将src放到主图像,而不是寻找特定的大小(假定它们没有设置),则可以创建类似于div.image img的CSS。这将查找与其主映像匹配的
您也不需要所有的循环代码
例如那么我们如何获得图像的实际宽度和高度呢?您必须先下载它。然后,这里有一些解决方案可以满足您的需求:
Document doc = Jsoup.get(url).timeout(t).get();
Element image = doc.select("div.image img").first();
String source = image.attr("abs:src");