当前位置: 首页 > news >正文

做医疗的网站建设wordpress页面制作视频

做医疗的网站建设,wordpress页面制作视频,便宜自适应网站建设厂家,项目建设表态发言chromedriver是谷歌浏览器驱动,用来模拟谷歌运行操作的一个工具#xff0c;此处主要讲解Java后端利用此插件进行网页截图#xff0c;并且适配Linux部署。 环境准备 Wondows服务器或电脑 本机需安装Chrome谷歌浏览器#xff0c;根据本机浏览器版本#xff0c;下载对应的chr…chromedriver是谷歌浏览器驱动,用来模拟谷歌运行操作的一个工具此处主要讲解Java后端利用此插件进行网页截图并且适配Linux部署。 环境准备 Wondows服务器或电脑 本机需安装Chrome谷歌浏览器根据本机浏览器版本下载对应的chromedriver版本chromedrive插件下载地址 谷歌chromeDriver插件地址下载后解压即可。PS网上看到许多需要配置环境变量的实测根本不需要。 注意插件版本和本机浏览器版本一定要对应 Linux服务器 安装Chrome yum install https://dl.google.com/linux/direct/google-chrome-stable_current_x86_64.rpm查看版本 google-chrome --version根据版本下载插件chromedrive插件下载地址https://registry.npmmirror.com/binary.html?pathchromedriver/选择Linux版上传到服务器后解压上面默认安装最新版本。 // 解压 unzip chromedriver_linux64.zip // 赋权 chmod 777 chromedriver // 安装浏览器中文字体 yum -y groupinstall FontsJava代码部分 引入maven !-- 浏览器截图jar包 --dependencygroupIdorg.seleniumhq.selenium/groupIdartifactIdselenium-java/artifactIdversion3.141.59/version/dependencydependencygroupIdcom.google.guava/groupIdartifactIdguava/artifactIdversion27.0-jre/version/dependency截图工具方法类 代码里面用到的是ChromeDriverService启动还有一种是 ChromeDriver driver new ChromeDriver(options); System.setProperty(“webdriver.chrome.driver”, “/data/server/legal-document-library-task/chromedriver”); 这种在高并发频繁截图时会遇到ChromeDriver插件未正常关闭的情况会占用端口或内存。推荐使用ChromeDriverService方式。 public String imgUntil(String url){ChromeDriver driver null;FileInputStream inputFile null;ChromeDriverService service null;try {//(推荐)利用ChromeDriverService启动//这里/data/server/legal/chromedriver是下载的驱动路径Windows对应chromedriver.exe Linux对应chromedriver具体路径看你把驱动放在哪service new ChromeDriverService.Builder().usingDriverExecutable(new File(/data/server/legal/chromedriver)).usingAnyFreePort().build();service.start();ChromeOptions options new ChromeOptions();//ssl证书支持options.setCapability(acceptSslCerts, true);//截屏支持options.setCapability(takesScreenshot, true);//css搜索支持options.setCapability(cssSelectorsEnabled, true);//设置浏览器参数options.addArguments(--headless);options.addArguments(--no-sandbox);options.addArguments(--disable-gpu);options.addArguments(--disable-dev-shm-usage);options.setHeadless(true);driver new ChromeDriver(service,options);//设置超时避免有些内容加载过慢导致截不到图driver.manage().timeouts().pageLoadTimeout(1, TimeUnit.MINUTES);driver.manage().timeouts().implicitlyWait(1, TimeUnit.MINUTES);driver.manage().timeouts().setScriptTimeout(1, TimeUnit.MINUTES);//设置需要访问的地址driver.get(url);Thread.sleep(2000);//获取高度和宽度一定要在设置URL之后不然会导致获取不到页面真实的宽高Long width (Long)driver.executeScript(return document.documentElement.scrollWidth);Long height (Long) driver.executeScript(return document.body.parentNode.scrollHeight);System.out.println(高度height);/*//这里按照网页需求有些是滑动的时候才加在的如ajax的异步加载long temp_height 0;while (true) {//每次滚动500个像素因为懒加载所以每次等待2S 具体时间可以根据具体业务场景去设置driver.executeScript(window.scrollBy(0,500));temp_height 500;if(temp_heightheight){break;}}*///设置窗口宽高设置后才能截全driver.manage().window().setSize(new Dimension(width.intValue(), height.intValue()));File srcFile driver.getScreenshotAs(OutputType.FILE);// 这里的需求是将图片转为Base64码后换回实际按需求控制inputFile new FileInputStream(srcFile);byte[] buffer new byte[(int)srcFile.length()];inputFile.read(buffer);String content new BASE64Encoder().encode(buffer);return content;//设置截图文件保存的路径//String screenshotPath C:\\wenjian\\YA\\imgGG1.png;//FileUtils.copyFile(srcFile, new File(screenshotPath));}catch (Exception e){e.printStackTrace();log.error(截图失败:e);return null;}finally {try{if (inputFile ! null){inputFile.close();}}catch (Exception ee){}if (driver! null){driver.quit();service.stop();}}}工具2 全面截屏//配置本地的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)); 元素截图使用方法WebElement findElementByXPath ToolDriver.findElement(By.xpath(//*[id\s_lg_img\]));File screenshotAs findElementByXPath.getScreenshotAs(OutputType.FILE);String prName src/main/resources/ Toolimg .png;try {FileUtils.copyFile(screenshotAs, new File(prName));} catch (IOException e) {e.printStackTrace();} --全面截图再截图 File src ((TakesScreenshot) driver).getScreenshotAs(OutputType.FILE); WebElement element driver.findElement(By.xpath(//div[classmsn]));Rectangle rect element.getRect(); BufferedImage subImage ImageIO.read(src).getSubimage(rect.x, rect.y, rect.getWidth(), rect.height); ImageIO.write(subImage, png, src);
http://www.hkea.cn/news/14518584/

相关文章:

  • 备案网站名称大全官方网站建设的方法有哪些方面
  • 网页模板好的网站好wordpress搜索表单
  • 网站设计建设维护汕头模版网站建设
  • 微网站建设找哪家公司网店交易平台
  • 合肥建站企业seo站内优化最主要的是什么
  • 品牌网站织梦模板下载包头索易网站建设
  • 网络公司网站设计多少钱wordpress知名博客主体
  • 上海外贸soho网站建设互动广告
  • 来宾网站制作温州百度推广排名
  • 网站说明页内容维护wordpress搬家后页面空白
  • 一流的赣州网站建设百度怎么建设网站
  • 青岛建站模板厂家微信云开发小程序
  • 有经验的邯郸网站建设电子商务网站建设实用教程教案
  • 图片网站该如何做seo优化亚马逊跨境电商下载
  • 网站广告怎样做网站设计建设公司需要什么资质
  • 聊城网站建设有限公司网站建设求职具备什么
  • 做宣传图册在什么网站建立网站需要做什么
  • 网站更换服务器要重新备案吗网站忘了怎么办啊
  • 电影资源分享网站怎么做的剑阁县规划和建设局网站
  • 怎样网站seo网站统一做301
  • jsp网站开发之html入门知识做产品网站要备案吗
  • 固定ip做网站网络平台运营是做什么的
  • 中国设计网站排名用手机自创游戏
  • 汕头网站网店建设做网站cnfg
  • 优秀网站设计的标准专业企业网站制作怎么做
  • 企业网站管理系统破解版陕西省建设网三类人员证书查询
  • 浙江城乡与住房建设部网站建筑工程网点代表什么
  • 邢台做外贸网站廊坊网站关键词排名
  • 重庆seo网站策划做一个在线交易网站需要多少钱
  • 大航母网站建设与运营iis搭建网站404