一,全面截图
使用调整浏览器窗口大小进行截全面图片
(注:使用 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"));
一,全面屏截图效果图:
~( ̄▽ ̄)~*
二,长截屏:
(⊙﹏⊙)
网友评论