Llinux自动安装chrome与chromedriver

资源下载

Google Chrome Linux 版 RPM 安装包下载

下载地址:https://dl.google.com/linux/direct/google-chrome-stable_current_x86_64.rpm

如果遇到依赖性问题,可以尝试添加Google的官方仓库:

bash 复制代码
sudo tee /etc/yum.repos.d/google-chrome.repo <<EOF
[google-chrome]
name=google-chrome
baseurl=https://dl.google.com/linux/chrome/rpm/stable/x86_64
enabled=1
gpgcheck=1
gpgkey=https://dl-ssl.google.com/linux/linux_signing_key.pub
EOF
Chrome Driver 安装包下载

下载地址:https://chromedriver.storage.googleapis.com/index.html

chome 其他版本下载地址(zip压缩包)

json格式:googlechromelabs.github.io/chrome-for-testing/known-good-versions-with-downloads.json

web页面:https://googlechromelabs.github.io/chrome-for-testing/

安装(python脚本)

python 复制代码
# -*- coding: utf-8 -*-
import sys
import os
import logging as log
import time

# RPM包与驱动包保存地址
PKG_PATH = ""  # 替换为安装包地址


# linux 环境安装google-chrome
def linux_install_google_chrome():
    if sys.platform != 'win32':
        google_version = os.popen("google-chrome -version").read()
        log.info('google-chrome -version : {}'.format(google_version))
        prm_package_path = os.path.join(PKG_PATH, "google-chrome-stable_current_x86_64.rpm")
        if google_version == '':
            # 未安装 直接安装
            log.info('install google-chrome')
            os.system('rpm -ivh {}'.format(prm_package_path))
        elif google_version != 'Google Chrome 100.0.4896.75 \n':
            # 版本不对 卸载重装
            log.info('uninstall google-chrome')
            os.system('rpm -e --nodeps google-chrome-stable')
            time.sleep(20)
            log.info('reinstall google-chrome')
            os.system('rpm -ivh {}'.format(prm_package_path))
            time.sleep(20)
        google_version = os.popen("google-chrome -version").read()
        log.info('install google-chrome finished  -version : {}'.format(google_version))
        os.system('rm -f /etc/yum.repos.d/google-chrome.repo')
    else:
        log.info('Current system is {},not linux! Please install google chrome by yourself!'.format(sys.platform))


# linux 环境安装chromedriver
def linux_install_chromedriver():
    if sys.platform != 'win32':
        chromedriver_version = os.popen("chromedriver -version").read()
        log.info('google-chrome -version : {}'.format(chromedriver_version))
        chromedriver_path = os.path.join(PKG_PATH, "chromedriver")
        if '100.0.4896.60' not in chromedriver_version:
            os.system('chmod +x {}'.format(chromedriver_path))
            log.info('move chromedriver')
            os.system('mv -f {} /usr/bin/'.format(chromedriver_path))
            chromedriver_version = os.popen("chromedriver -version").read()
            log.info('current chromedriver -version : {}'.format(chromedriver_version))
        os.system('rm -f /etc/yum.repos.d/google-chrome.repo')
    else:
        log.info('Current system is {},not linux! Please install chromedriver by yourself!'.format(sys.platform))

相关推荐
田里的水稻20 小时前
C++_python_相互之间的包含调用方法
c++·chrome·python
木风小助理1 天前
`mapfile`命令详解:Bash中高效的文本至数组转换工具
开发语言·chrome·bash
L Jiawen1 天前
【Windows 系统】Chrome浏览器退出登录状态失效
前端·chrome·windows
alonewolf_991 天前
JVM调优实战与常量池深度解析:从Arthas到字符串常量池
前端·jvm·chrome
MV3前端助手2 天前
自定义浏览器窗口尺寸?借助「MV3前端助手」零门槛调用 Chrome 原生 API!
chrome
奋斗者1号2 天前
MQTT-C TLSv1.2调试核心技巧
c语言·开发语言·chrome
菜择贰2 天前
在linux(wayland)中禁用键盘
linux·运维·chrome
花果山总钻风2 天前
在 Debian 10.x 安装Chrome浏览器和ChromeDriver
运维·chrome·debian
TOPGUS2 天前
谷歌Chrome浏览器即将对HTTP网站设卡:突出展示“始终使用安全连接”功能
前端·网络·chrome·http·搜索引擎·seo·数字营销
MV3前端助手3 天前
VS Code 代码片段生成工具
chrome