安装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. 【Microstation】三维建模基础及软件入门到精通实验教程目录

    @ 目录 1. 专栏简介 2. 专栏地址 3. 专栏目录 1. 专栏简介 MicroStation是一款非常不错的二维和三维设计软件,由奔特力(Bentley)工程软件系统有限公司开发的一款软件.在C ...

  2. 拖动登录框 HTML+CSS+js

    先上效果 代码 <!DOCTYPE html> <html lang="en"> <head> <meta charset="U ...

  3. Navicat Premium 15 linux 安装与激活 ArchLinux 2021

    查看了很多教程花了半小时才弄好可真不容易 参考https://github.com/orginly/navicat-keygen 下载地址 http://www.navicat.com.cn/down ...

  4. Java读取SQL server数据库

    要打开SQL server 的三个服务,然后再执行代码. package com.sql; import java.sql.SQLException; import java.sql.Statemen ...

  5. GPU上的基本线性代数

    GPU上的基本线性代数 cuBLAS库提供了基本线性代数子例程(BLAS)的GPU加速实现.cuBLAS通过针对NVIDIA GPU进行了高度优化的嵌入式行业标准BLAS API来加速AI和HPC应用 ...

  6. CUDA C++编程手册(总论)

    CUDA C++编程手册(总论) CUDA C++ Programming Guide The programming guide to the CUDA model and interface. C ...

  7. 软件工具将GPU代码迁移到fpga以用于AI应用

    软件工具将GPU代码迁移到fpga以用于AI应用 Software tools migrate GPU code to FPGAs for AI applications 人工智能软件初创公司Mips ...

  8. SQL进阶总结(一)

    学而不思则罔,趁着假期好好总结下SQL的编程知识. 掌握SQL,首先有两个知识点要明确,要贯穿在我们整个学习SQL的过程中. SQL 不同于之前学习的面向过程.面向编程语言,SQL是一门面向集合的编程 ...

  9. 【八】Kubernetes 五种资源控制器详细介绍以及功能演示

    一.控制器说明 Pod 的分类: 自主式 Pod:该类型的 Pod 无论是异常退出还是正常退出都不会被创建,也就是说没有对应的管理者. 控制器管理的 Pod:该类型 Pod 在控制器的生命周期里,控制 ...

  10. .net core Redis消息队列中间件【InitQ】

    前言 这是一篇拖更很久的博客,不知不觉InitQ在nuget下载量已经过15K了,奈何胸无点墨也不晓得怎么写(懒),随便在github上挂了个md,现在好好唠唠如何在redis里使用队列 队列缓存分布 ...