1.需求背景
客户希望将项目中统计报表的界面的数据每月发送给他。不考虑用jasper报表软件之类太重的,直接截图,将图片放入邮件中更合适。需要跳过登录验证,截取指定元素图片。
2.技术选择
之前调研过用Phantomjs来实现截图,发现截出来的图片总是显示不正常,所以就选择用chrome headles
3.linux安装chrome headless
1./etc/yum.repos.d/google-chrome.repo
[google-chrome]
name=google-chrome
baseurl=http://dl.google.com/linux/chrome/rpm/stable/$basearch
enabled=1
gpgcheck=1
gpgkey=https://dl-ssl.google.com/linux/linux_signing_key.pub
2.yum install google-chrome-stable
或者可以直接通过使用脚本安装
curl https://intoli.com/install-google-chrome.sh | bash
只适用于centos7.0以上,装不上就换系统把
4.下载chromedriver
找到对应浏览器版本的驱动
http://npm.taobao.org/mirrors/chromedriver/
5.编写java端代码
添加依赖
org.seleniumhq.selenium
selenium-java
3.4.0
package com.zdw.selenium_