安装chrome

创建yum源

# cd /etc/yum.repos.d/
# vim google-chrome.repo

创建yum源信息

[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

安装google-chrome

# yum -y install google-chrome-stable --nogpgcheck

chrome安装路径

使用上述步骤安装完成之后,chrome的安装路径在/opt/google/chrome目录下

安装chromeDriver

查看chrome版本

# google-chrome -version

下载对应版本的chromeDriver

从https://npm.taobao.org/mirrors/chromedriver/查询与chrome版本对应的chromeDriver版本,大版本对应即可,如当前chrome最新的版本是78.0.3904.97,只需要查找与78对应的chromeDriver版本即可。

找到对应的版本后,在linux上使用以下命令下载chromeDriver压缩包:

# mkdir /usr/chromedriver
# cd /usr/chromedriver
# wget https://npm.taobao.org/mirrors/chromedriver/version/chromedriver_linux64.zip

version为chromeDriver的完整版本号

下载之后解压压缩包:

# unzip chromedriver_linux64.zip

给chromeDriver文件夹赋予权限:

# chmod +x /usr/chromedriver/chromedriver

安装Xvfb

安装说明

安装此软件的原因是在centos上,chromeDriver必须使用无头模式,当有不使用无头模式的需求时就需要安装此软件,否则chromeDriver无法正确启动chrome

安装Xvfb

# yum install Xvfb -y
# yum install xorg-x11-fonts* -y

在/usr/bin/目录下创建xvfb-chrome文件

# vim /usr/bin/xvfb-chrome

在xvfb-chrome文件中输入以下内容

#!/bin/bash

_kill_procs() {
kill -TERM $chrome
wait $chrome
kill -TERM $xvfb
} # Setup a trap to catch SIGTERM and relay it to child processes
trap _kill_procs SIGTERM XVFB_WHD=${XVFB_WHD:-1280x720x16} # Start Xvfb
Xvfb :99 -ac -screen 0 $XVFB_WHD -nolisten tcp &
xvfb=$! export DISPLAY=:99 chrome --no-sandbox --disable-gpu$@ &
chrome=$! wait $chrome
wait $xvfb

添加执行权限:

# chmod +x /usr/bin/xvfb-chrome

查看当前的映射关系:

# ll /usr/bin/ | grep chrom

映射关系如下所示:

lrwxrwxrwx 1 root root 31 Nov 18 14:25 chrome -> /etc/alternatives/google-chrome
lrwxrwxrwx 1 root root 20 Nov 18 14:25 google-chrome -> /usr/bin/xvfb-chrome
lrwxrwxrwx 1 root root 32 Jun 28 18:39 google-chrome-stable -> /opt/google/chrome/google-chrome
-rwxr-xr-x 1 root root 422 Nov 18 14:24 xvfb-chrome

更改chrome启动的软连接:

# ln -s /etc/alternatives/google-chrome /usr/bin/chrome
# rm -rf /usr/bin/google-chrome
# ln -s /usr/bin/xvfb-chrome /usr/bin/google-chrome

此时再次查看映射关系,如下所示:

lrwxrwxrwx 1 root root 31 Nov 18 14:36 chrome -> /etc/alternatives/google-chrome
lrwxrwxrwx 1 root root 20 Nov 18 14:36 google-chrome -> /usr/bin/xvfb-chrome
lrwxrwxrwx 1 root root 32 Jun 28 18:21 google-chrome-stable -> /opt/google/chrome/google-chrome
-rwxr-xr-x 1 root root 422 Nov 18 14:36 xvfb-chrome

以上步骤操作完成后即可在centos环境下使用非无头浏览器,此时chromeDriver创建时不能再添加以下参数:

options.addArguments("--headless")

最新文章

  1. Javascript写俄罗斯方块游戏
  2. wpf window set window的owner
  3. python-判断系统平台
  4. ajax contenttype
  5. RFID FDX HDX Technology
  6. Android(java)学习笔记115:Android InputMethodManager输入法简介
  7. scroll
  8. poj1995-快速幂取模
  9. 开源免费跨平台opengl opencv webgl gtk blender, opengl贴图程序
  10. JSON【介绍、语法、解析JSON】
  11. SQL server学习(二)表结构操作、SQL函数、高级查询
  12. 工具篇之GIT知识整理(一)
  13. .Net Core 在 Linux-Centos上的部署实战教程(一)
  14. 【AGC014E】Blue and Red Tree 并查集 启发式合并
  15. Python之旅Day1 数据类型初识(数字|字符串|列表|数据运算) 编码 表达式(if...else|for|while)
  16. Appium 自带的定位工具 Inspector
  17. Java7,AutoClosable
  18. C#用openfiledialog文件和savefileDialog打开和保存文件
  19. Python pyQt4/PyQt5 学习笔记3(绝对对位,盒布局,网格布局)
  20. git版本控制文件提交到composer应用市场,并下载用市场的软件库

热门文章

  1. Mysql体系结构管理
  2. go输出九九乘法表和金字塔
  3. 【pytest】使用parametrize将参数化变量传递到fixture
  4. 搞定Redis(一)Redis的安装和五大基本数据类型
  5. libevent中的bufferevent原理
  6. Vue的常用特性
  7. Python+Selenium - Alert弹框
  8. 书列荐书 |《黑天鹅·如何应对不可预知的未来》【美】纳西姆 尼古拉斯 塔勒布 著
  9. 模型压缩95%:Lite Transformer,MIT韩松等人
  10. CodeGen融合核心关系循环扩展