我正在创建使用HtmlUnit从网上下载一些图像的代码。 但是当我使用HtmlUnit保存图像时,与原始图像相比,图像的质量非常低。 我使用此代码将img url保存到文件中。
try {
HtmlImage imgX = (HtmlImage)
page.getByXPath("//img").get(0);
Thread.sleep(3000);
File imageFile = new File(dir +"/"+ name);
imgX.saveAs(imageFile);
System.out.println("Done!!!!");
} catch (Exception e) {
e.printStackTrace();
}
是否还有其他选项可以获得最佳质量的图像?
我试过用这个: How to convert an <img... in html to byte [] in Java 但是没有创建图像。
答案 0 :(得分:0)
InputStream inputStream = imgX.getWebResponse(true).getContentAsStream();
然后直接在InputStream上工作:
File imageFile = new File(dir +"/"+ Name);
FileOutputStream outputStream = new FileOutputStream(imageFile);
IOUtils.copy(inputStream, outputStream);