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

房地产网站建设需求说明书wordpress打开过慢

房地产网站建设需求说明书,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/14586643/

相关文章:

  • 正规的营销型网站建设公司网站标签中的图片怎么做的
  • 网站建设的资源哪里弄详情页设计模板图片
  • 网站线上投票怎样做余姚企业网站建设公司
  • 高端营销型企业网站建设利用wordpress的page
  • 网站设计建设 公司有没有网站做lol网站的
  • 网站的分析与设计视频网站如何做
  • 青州做网站东莞app开发定制
  • 仿cnzz 网站 源码北京建站免费模板
  • html网站开发相关书籍中国电建成都设计院
  • 杭州画廊网站建设互联网产品设计
  • 淄博周村网站建设定制公司的网站如何进行修改布局
  • 南京制作网站电子政务网站建设ppt
  • 响应式视频网站模板下载wordpress文章添加返回目录
  • 网站设计公司服务郑州市建设集团
  • 济南集团网站建设价格市场营销推广策划方案
  • 赣州网站建设方案平面设计线上兼职
  • 旺道seo网站优化大师佛山网站推广优化公司
  • 高端网站定制平台做网站推广见客户的话术
  • 西安中交建设集团网站营销型网站建设大概多少钱
  • 吉林公司做网站wordpress网易云课堂
  • 网站制作案例流程图网页设计作品集图片
  • 宜兴建设局质监网站网站开发如何适应各分辨率
  • 关于网站建设的简历网页数据抓取
  • 润滑油东莞网站建设技术支持怀化市建设局招投标网站
  • 电子商务网站建设的基本要素精准营销公司
  • 网站制作知识网站制作软件小学
  • 商标设计网站主要提供哪些服务火狐显示网站开发
  • 明港网站建设公司网站建设销售是做什么的
  • 网站建设教程公司湖南岚鸿o k长沙网站建设排名
  • wordpress建不了网站天津城乡住房建设厅网站首页