美文网首页
java+seleium屏幕截图(全面截图,长截图)

java+seleium屏幕截图(全面截图,长截图)

作者: 开心的小哈 | 来源:发表于2020-11-13 19:21 被阅读0次

一,全面截图

使用调整浏览器窗口大小进行截全面图片
(注:使用 driver.manage().window().maximize()进行截图时需要设设置窗口不隐藏,要弹出窗口应为弹窗窗口才会获得当前windows窗口的大小给浏览器进行赋值最大窗口)

 //配置本地的chromediver.exe谷歌的内核
         System.setProperty("webdriver.gecko.driver", "C:\\Program Files (x86)\\Google\\Chrome\\Application\\chromedriver.exe");
         //设置ChromeOptions打开方式,设置headless:不弹出浏览器
         //设置好使用ChromeDriver使用
         ChromeDriver driver = new ChromeDriver();    
        
         driver.get("https://www.jianshu.com/u/a2b05c68b03b");
        
         //设置浏览器弹窗页面的大小
         driver.manage().window().maximize();
         //使用getScreenshotAs进行截取屏幕
            File srcFile = driver.getScreenshotAs(OutputType.FILE);  
            FileUtils.copyFile(srcFile, new File("G:\\pyChar\\jj.png")); 
      

二,长截图

将浏览器窗口大小调整页面滚动的距离长度并截图从而得到长截图

 //配置本地的chromediver.exe谷歌的内核
         System.setProperty("webdriver.gecko.driver", "C:\\Program Files (x86)\\Google\\Chrome\\Application\\chromedriver.exe");
         //设置ChromeOptions打开方式,设置headless:不弹出浏览器
         ChromeOptions options = new ChromeOptions();
         options.addArguments("headless");
         //设置好使用ChromeDriver使用
         ChromeDriver driver = new ChromeDriver(options);    
         //获取要截图的地址,注:需要先获取地址哦,不然下方获取的宽度高度就会是弹窗的高和宽,而不是页面内容的高宽
         driver.get("https://www.jianshu.com/u/a2b05c68b03b");
         //获取页面高宽使用:return document.documentElement.scrollWidth
         //Long width = (Long)driver.executeScript("return document.documentElement.scrollWidth");
        // Long height =(Long) driver.executeScript("return document.documentElement.scrollHeight");
        Long width = (Long) ((JavascriptExecutor)driver).executeScript("return document.documentElement.scrollWidth");
        Long height = (Long) ((JavascriptExecutor)driver).executeScript("return document.documentElement.scrollHeight");
         //设置浏览器弹窗页面的大小
         driver.manage().window().setSize(new Dimension(width.intValue(), height.intValue()));
         //使用getScreenshotAs进行截取屏幕
            File srcFile = driver.getScreenshotAs(OutputType.FILE);  
            FileUtils.copyFile(srcFile, new File("G:\\pyChar\\jj.png")); 

一,全面屏截图效果图:


~( ̄▽ ̄)~*

二,长截屏:


(⊙﹏⊙)

相关文章

  • java+seleium屏幕截图(全面截图,长截图)

    一,全面截图 使用调整浏览器窗口大小进行截全面图片(注:使用 driver.manage().window().m...

  • mac 软件和快捷键

    辅助软件: iShot iShot是Mac上一款免费优秀、功能全面的录屏、区域截图、窗口截图、长截图、延时截图、快...

  • 屏幕截图

  • 屏幕截图

    方法1 save_screenshot() #该方法直接保存当前屏幕截图到当前脚本所在文件位置。 driver.s...

  • 屏幕截图

    Activity界面区域划分 如图:最大的红色区域是屏幕界面,绿色次大区域我们称之为“应用界面区域”,蓝色的区域我...

  • 屏幕截图

    有时候需要截取屏幕上的某一块内容,比如捕鱼达人游戏// 核心代码// 调用某个view的layer的renderI...

  • 屏幕截图

  • 屏幕截图

    游戏中可使用如下代码进行截屏

  • 屏幕截图

  • 屏幕截图

网友评论

      本文标题:java+seleium屏幕截图(全面截图,长截图)

      本文链接:https://www.haomeiwen.com/subject/mnjbbktx.html