由于chrome最新版不在支持centos7版本,本文采用上传包的方式进行安装
安装chrome
-
下载安装包
# 网盘中下载安装包 google-chrome-stable_current_x86_64-107.rpm #链接: https://pan.baidu.com/s/1kN2BQviPo1WmZwPDqGkvbQ 提取码: xiao # 上传到/soft/chrome 目录下 -
切换国内源(阿里源)
# 下载源文件 https://mirrors.aliyun.com/repo/Centos-7.repo # 切换到 /etc/yum.repos.d/ 目录下 更换 CentOS-Base.repo cd /etc/yum.repos.d/ mv CentOS-Base.repo CentOS-Base.repo.bak mv Centos-7.repo CentOS-Base.repo # 清理依赖 yum clean all yum makecache -
安装依赖
yum install atk atk-devel at-spi2-atk at-spi2-core cairo cairo-devel gtk3 gtk3-devel pango pango-devel vulkan liberation-fonts wget xdg-utils -
安装浏览器
# 切换到安装包所在位置 cd /soft/chrome # 安装浏览器 rpm -ivh google-chrome-stable_current_x86_64-107.rpm -
测试
google-chrome --version # 展示出chrome的版本,说明安装完成 # Google Chrome 107.0.5304.121 # 默认的安装路径 /opt/google/chrome
安装webdriver
-
下载对应版本的驱动
# 低版本 https://chromedriver.storage.googleapis.com/index.html # 高版本 https://chromedriver.storage.googleapis.com/index.html -
将驱动上传到linux系统的path目录下(/usr/bin)
cd /usr/bin rz chromedriver # 给chromedriver授权 chmod a+x chromedriver
使用webdriver
-
maven依赖
<!-- webdriver start --> <dependency> <groupId>org.seleniumhq.selenium</groupId> <artifactId>selenium-java</artifactId> <version>3.6.0</version> </dependency> <!-- webdriver end --> -
配置使用
public class WebDriverFactory { public static WebDriver getWebDriver() { // 本机驱动位置 // System.setProperty("webdriver.chrome.driver", "C:\\Program Files\\Google\\Chrome\\Application\\chromedriver.exe"); // 服务器驱动位置 System.setProperty("webdriver.chrome.driver", "/usr/bin/chromedriver"); ChromeOptions options = new ChromeOptions(); // options.setExperimentalOption("excludeSwitches", Collections.singletonList("enable-automation")); // options.setExperimentalOption("useAutomationExtension", false); options.addArguments("--disable-infobars");// # 禁止策略化 options.addArguments("--no-sandbox");// # 解决DevToolsActivePort文件不存在的报错 options.addArguments("window-size=1920x3000");// # 指定浏览器分辨率 options.addArguments("--disable-gpu");// # 谷歌文档提到需要加上这个属性来规避bug options.addArguments("--incognito");// # 隐身模式(无痕模式) // options.addArguments("--disable-javascript");// # 禁用javascript options.addArguments("--start-maximized");// # 最大化运行(全屏窗口),不设置,取元素会报错 options.addArguments("--disable-infobars");// # 禁用浏览器正在被自动化程序控制的提示 // options.addArguments('--hide-scrollbars');// # 隐藏滚动条, 应对一些特殊页面 options.addArguments("blink-settings=imagesEnabled=true");// # 不加载图片, 提升速度 // options.addArguments('--headless') //# 浏览器不提供可视化页面. linux下如果系统不支持可视化不加这条会启动失败 //css搜索支持 options.setCapability("cssSelectorsEnabled", true); // options.addArguments("blink-settings=imagesEnabled=false");// #不加载图片, 提升速度 options.addArguments("--disable-dev-shm-usage"); // 隐藏后台启动浏览器 (linux上隐藏不打开浏览器) options.addArguments("--headless"); ChromeDriver chromeDriver=new ChromeDriver(options); return chromeDriver; } }
1502

被折叠的 条评论
为什么被折叠?



