Maison >interface Web >js tutoriel >Comment utiliser le sélénium pour prendre des captures d'écran et générer des images

Comment utiliser le sélénium pour prendre des captures d'écran et générer des images

一个新手
一个新手original
2017-09-18 10:03:022844parcourir

Lorsque vous devez enregistrer localement les images sur la page Web, utilisez des captures d'écran de la page Web.

Étant donné que le pilote fourni par le package Selenium Jar simule les opérations de page, il n'y a pas d'attribut de clic droit. Vous pouvez enregistrer l'image dans la zone locale en simulant un clic droit de la souris. Non seulement les étapes sont compliquées, mais vous devez également introduire d'autres packages jar. Personnellement, je pense qu'il n'est pas nécessaire de se donner beaucoup de problèmes. L'utilisation de l'attribut TakesScreenshot du package jar sélénium pour prendre des captures d'écran peut être effectuée. atteindre également l’objectif de générer des images.

Étapes de fonctionnement :

>
 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 = ""; // 图片路径

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn