如何在Java中使用SeleniumWebDriver模拟打印屏幕按钮

如何在Java中使用SeleniumWebDriver模拟打印屏幕按钮,java,selenium,selenium-webdriver,Java,Selenium,Selenium Webdriver,如何在Java中使用selenium web驱动程序模拟打印屏幕按钮 问候,, Vignesh不支持它,只支持网页快照。但是,您可以使用Robot来执行此操作 try { String format = "jpg"; String fileName = printScreen." + format; Rectangle screenRect = new Rectangle(Toolkit.getDefaultToolkit().getScreenSize());

如何在Java中使用selenium web驱动程序模拟打印屏幕按钮

问候,,
Vignesh不支持它,只支持网页快照。但是,您可以使用
Robot
来执行此操作

try {
    String format = "jpg";
    String fileName = printScreen." + format;

    Rectangle screenRect = new Rectangle(Toolkit.getDefaultToolkit().getScreenSize());
    Robot robot = new Robot();
    BufferedImage screenFullImage = robot.createScreenCapture(screenRect);
    ImageIO.write(screenFullImage, format, new File(fileName));

} catch (AWTException | IOException ex) {
    System.err.println(ex);
}
在C中#


可能重复的问题实际上是一个重复的问题……他早些时候问了一个更清楚的问题:我尝试了以下代码,WebDriver=newfirefoxdriver();driver.get(“scrFile=((TakesScreenshot)driver).getScreenshotAs(OutputType.FILE);FileUtils.copyFile(scrFile,新文件(“c:\\tmp\\screenshot.png”));但代码的问题是,它将截取整个网页的屏幕截图,若说该网页有5个页面,它将截取所有5个页面的屏幕截图,但我只想截取当前页面,我想在后端运行此代码,所以我不能使用Robot().createScreenCapture方法可能您的问题已经得到了回答,我们如何在c#@TalibAllauddin添加的解决方案中实现这一点。
using System.Drawing;
using System.Drawing.Imaging;
using System.Windows.Forms;

Bitmap bitmap = new Bitmap(Screen.PrimaryScreen.Bounds.Width, Screen.PrimaryScreen.Bounds.Height);
Graphics graphics = Graphics.FromImage(bitmap);
graphics.CopyFromScreen(0, 0, 0, 0, bitmap.Size);
bitmap.Save(@"C:\ScreenShots\printScreen.jpg", ImageFormat.Jpeg);