Rumah  >  Artikel  >  hujung hadapan web  >  使用selenium 截屏生成图片的方法

使用selenium 截屏生成图片的方法

一个新手
一个新手asal
2017-09-18 10:03:022707semak imbas

        当需要保存网页上的图片到本地时,使用到网页截图。

        由于selenium jar包提供的driver,模拟页面操作,却没有右击属性。可以通过模拟鼠标右击的形式,进行图片保存至本地的操作。步骤繁琐不说还需要引入别的jar包,个人认为没必要大费周章,使用selenium jar包TakesScreenshot属性进行截屏一样可以达到生成图片目的。

操作步骤:

                  
 1 获取图片元素,得到图片位置和大小
WebElement imgElement = driver.findElement(By.id("img"));
Point location = webElement.getLocation(); 
//  获得位置。
Dimension size = webElement.getSize(); // 
大小
2 创建全屏截图,通过ImageIo 读取形式
TakesScreenshot takesScreenshot = (TakesScreenshot) driver;
BufferedImage originalImage = ImageIO.read(new ByteArrayInputStream(takesScreenshot.getScreenshotAs(OutputType.BYTES)));
3 截取图片,生成BufferedImage
 BufferedImage croppedImage = originalImage.getSubimage( location.getX(), location.getY(), size.getWidth(), size.getHeight());
4  本地生成图片
String fileUrl = ""; // 图片路径
File file = new File(fileUrl);
ImageIO.write(croppedImage , "png", file);  // 内容写入

Atas ialah kandungan terperinci 使用selenium 截屏生成图片的方法 . Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn