安装chrome

创建yum源文件

$ vim /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

停用更新-参考官网

如要阻止 Chrome 浏览器自动更新,请执行下列一项操作:

  • 在安装 Chrome 浏览器之前先创建一个空白存储区:
    $ sudo touch /etc/default/google-chrome
  • 在 /etc/default/google-chrome 中添加下列一行内容:
    repo_add_once=false

安装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的完整版本号

下载之后解压压缩包:(安装命令:yum install unzip -y)

$ unzip chromedriver_linux64.zip

给chromeDriver文件夹赋予权限:

$ chmod +x /usr/chromedriver/chromedriver

安装Xvfb

安装说明

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

安装Xvfb

$ yum install Xvfb -y

$ yum install libXfont

$ 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 Apr 8 17:12 google-chrome -> /etc/alternatives/google-chrome
lrwxrwxrwx 1 root root 32 Apr 8 17:12 google-chrome-stable -> /opt/google/chrome/google-chrome
-rwxr-xr-x 1 root root 370 Apr 8 18:12 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

此时再次查看映射关系

$ ll /usr/bin/ | grep chrom

如下所示:

lrwxrwxrwx 1 root root 31 Apr 8 18:13 chrome -> /etc/alternatives/google-chrome
lrwxrwxrwx 1 root root 20 Apr 8 18:13 google-chrome -> /usr/bin/xvfb-chrome
lrwxrwxrwx 1 root root 32 Apr 8 17:12 google-chrome-stable -> /opt/google/chrome/google-chrome
-rwxr-xr-x 1 root root 370 Apr 8 18:12 xvfb-chrome

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

options.addArguments("--headless")

 

CentOS-yum安装chrome+chromeDriver+xvfb的更多相关文章

  1. centos7安装chrome+chromeDriver+Xvfb

    安装chrome 创建yum源 # cd /etc/yum.repos.d/ # vim google-chrome.repo 创建yum源信息 [google-chrome] name=google ...

  2. 如何在linux CentOS 上安装chrome 谷歌浏览器?

    获得linux命令的root权限:http://blog.csdn.net/mddy2001/article/details/76521101. 更改密码在终端中输入:sudo passwd root ...

  3. centos yum 安装 mongodb 以及php扩展

    centos yum 安装 mongodb 以及php扩展 投稿:hebedich 字体:[增加 减小] 类型:转载 MongoDB是一个基于分布式文件存储的数据库.由C++语言编写.旨在为WEB应用 ...

  4. 【转】CentOS yum安装和卸载软件的使用方法

    在CentOS yum安装和卸载软件的使用方法安装方法安装一个软件时.   CentOS yum -y install httpd安装多个相类似的软件时   CentOS yum -y install ...

  5. [转帖]Centos7 yum安装Chrome浏览器

    Centos7 yum安装Chrome浏览器 https://www.cnblogs.com/ianduin/p/8727333.html以及https://blog.csdn.net/libaine ...

  6. CentOS yum 安装LAMP PHP5.4版本

    CentOS yum 安装LAMP PHP5.4版本 [日期:2015-06-04] 来源:Linux社区  作者:rogerzhanglijie [字体:大 中 小]     Linux系统版本:C ...

  7. CentOS yum安装mcrypt

    CentOS yum安装mcrypt   本篇排错的前提是只想用yum安装,不想使用源码包编译安装. php依赖一下包:   #yum install libmcrypt libmcrypt-deve ...

  8. CentOS yum安装mcrypt详细图解教程

    CentOS yum安装mcrypt详细图解教程 在Linux的发行版CentOS 6.3 系统下,LAMP(Linux+Apache+Mysql+php)环境搭建好后发现PHPMyadmin提示 “ ...

  9. centos yum 安装php5.6

    centos yum 安装php5.6 卸载 php之前的版本: yum remove -y php-common 配置源 CentOS 6.5的源 rpm -Uvh http://ftp.iij.a ...

随机推荐

  1. Web网站实现用户认证访问(加密访问)

    Web网站实现用户认证访问,有效减少流量的访问,具体的实现步骤如下: 我们使用httpd作为测试对象,体现安装好httpd服务,并且可以在浏览器访问测试首页(可以关闭防火墙:如果不关闭防火墙,则需要开 ...

  2. hugboy源库

    =[个人整理的一些源库,均来自网络]= -[Ubuntu]- #阿里源 Ubuntu 20.04 deb http://mirrors.aliyun.com/ubuntu/ focal main re ...

  3. bond0 配置ip不生效排查方法

         今天巡检的时候,发现无法连接到服务器上面了,于是到机房连接到显示器查看: 1.先检查网卡,协议有没有问题. 2.远程链接的网卡名称是bond0,用ifconfig看看网卡配置,然后发现配置的 ...

  4. JDK、JRE 和 JVM 的区别

    JDK JDK 是 Java Development Kit 的缩写,JDK 是 Java 语言的软件开发工具包( SDK ).它提供了Java 开发.编译.运行需要的文件和环境. 如果你是 Java ...

  5. 解决Windows路径太长的目录以及文件名超长删除的问题

    因Windows文件夹有长度限制,在路径太深,长度达到600多个字符时,删除文件时出现报错"源文件名长度大于文件系统支持的长度.请尝试将其移动到具有较短路径名称的位置,或者在执行此操作前尝试 ...

  6. week-03

    1.简述HTTP交互原理 1.浏览器分析输入访问的地址 域名(IP)+$uri 2.读取浏览器缓存 3.请求DNS服务器,解析域名,返回IP 4.建立TCP连接,三次握手 5.发送请求 6.接收返回请 ...

  7. 使用goland调试远程代码

    前言 很多时候我们都在window上使用goland,并直接使用goland调试go代码. 但是很多时候我们的程序运行在Linux服务器上,虽然可以通过dlv命令行进行手动打断点调试,但是太麻烦了. ...

  8. maven把依赖打进jar包

    1.把依赖打进sigma-api的jar包 <?xml version="1.0" encoding="UTF-8"?> <project x ...

  9. 解决redis集群版本不一致导致RDB同步失败的问题

    某天,运维反馈某两个机房的出口流量和入口流量过大,并且持续了好一段时间. 再仔细排查后发现是 redis 集群的几台服流量问题,于是开始查日志. 在日志中发现出现大量的 Can't handle RD ...

  10. mybatis学习——实现分页

    首先回顾一下分页的sql语句: SELEC * FROM 表名 LIMIT startIndex,pageSize tips: *startIndex:起始的位置(从哪个元素开始分页) *pageSi ...