¿Es posible guardar una imagen en el disco duro con HTMLUnit dándole la URL de la imagen? ¿Si es así, cómo?Guardar imagen de url con HTMLUnit
¡Recuerdos!
¿Es posible guardar una imagen en el disco duro con HTMLUnit dándole la URL de la imagen? ¿Si es así, cómo?Guardar imagen de url con HTMLUnit
¡Recuerdos!
Si está utilizando HtmlUnit, entonces debe tener una página Html. No se puede obtener una HtmlImage y guardar el archivo de esta manera:
HtmlImage image = page.<HtmlImage>getFirstByXPath("//img[@src='blah']");
File imageFile = new File("/path/to/file.jpg");
image.saveAs(imageFile);
Si usted tiene una dirección URL ... entonces yo no creo que HtmlUnit necesita descargar la imagen.
Así es como escribí el código como el siguiente:
NodeList nlx = downloadPage.getElementsByTagName("a");
for (int y = 0; y<nlx.getLength(); y++) {
String ss = nlx.item(y).toString();
if(ss.contains("download/?fileformat=kml")) {
System.out.println(ss);
HtmlElement anchorAttachment = (HtmlElement)nlx.item(y);
InputStream is =anchorAttachment.click().getWebResponse().getContentAsStream();
try {
//System.out.println(is);
OutputStream out = new FileOutputStream(new File(fileName+".KML"));
int read=0;
byte[] bytes = new byte[1024];
while((read = is.read(bytes))!= -1) {
out.write(bytes, 0, read);
}
is.close();
out.flush();
out.close();
System.out.println("New file created!");
} catch (IOException e) {
System.out.println(e.getMessage());
}
}
}
¿Qué pasa si la imagen inserta de forma dinámica en la página HTML. Por ejemplo, con un servlet? como http://example.com/servlet/GetImage&key=1234 –
Este proceso seguirá siendo el mismo siempre que la imagen esté en la página Html resultante generada a partir de la salida del servlet. –