http://stackoverflow.com/questions/5882005/how-to-download-image-from-any-web-page-in-java
(throws IOException) Image image = null; try { URL url = new URL("http://www.yahoo.com/image_to_read.jpg"); image = ImageIO.read(url); } catch (IOException e) { }
See javax.imageio package for more info. That's using the AWT image. Otherwise you could do:
URL url = new URL("http://www.yahoo.com/image_to_read.jpg"); InputStream in = new BufferedInputStream(url.openStream()); ByteArrayOutputStream out = new ByteArrayOutputStream(); byte[] buf = new byte[1024]; int n = 0; while (-1!=(n=in.read(buf))) { out.write(buf, 0, n); } out.close(); in.close(); byte[] response = out.toByteArray();
And you may then want to save the image so do:
FileOutputStream fos = new FileOutputStream("C://borrowed_image.jpg"); fos.write(response); fos.close();
|
|
answered
May 4 '11 at 10:32
|
|
|
|
|
You are looking for a web crawler. You can use JSoup to do this, here is basic example
|
answered
May 4 '11 at 10:31
|
|
|
|
|
It works for me)
URL url = new URL("http://upload.wikimedia.org/wikipedia/commons/9/9c/Image-Porkeri_001.jpg"); InputStream in = new BufferedInputStream(url.openStream()); OutputStream out = new BufferedOutputStream(new FileOutputStream("Image-Porkeri_001.jpg")); for ( int i; (i = in.read()) != -1; ) { out.write(i); } in.close(); out.close();
|
|
answered
Apr 15 '14 at 21:11
|
|
|
|
|
If you want to save the image and you know its URL you can do this:
try(InputStream in = new URL("http://example.com/image.jpg").openStream()){ Files.copy(in, Paths.get("C:/File/To/Save/To/image.jpg")); }
You will also need to handle the IOException s which may be thrown.
|
answered
Sep 9 '15 at 6:15
|
|
|
|
|
The following code downloads an image from a direct link to the disk into the project directory. Also note that it uses try-with-resources .
import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.File; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.net.MalformedURLException; import java.net.URL; import org.apache.commons.io.FilenameUtils; public class ImageDownloader { public static void main(String[] arguments) throws IOException { downloadImage("https://upload.wikimedia.org/wikipedia/commons/7/73/Lion_waiting_in_Namibia.jpg", new File("").getAbsolutePath()); } public static void downloadImage(String sourceUrl, String targetDirectory) throws MalformedURLException, IOException, FileNotFoundException { URL imageUrl = new URL(sourceUrl); try (InputStream imageReader = new BufferedInputStream( imageUrl.openStream()); OutputStream imageWriter = new BufferedOutputStream( new FileOutputStream(targetDirectory + File.separator + FilenameUtils.getName(sourceUrl)));) { int readByte; while ((readByte = imageReader.read()) != -1) { imageWriter.write
|