Linux

您所在的位置:网站首页 ubuntu下安装谷歌浏览器 Linux

Linux

2024-07-02 10:10| 来源: 网络整理| 查看: 265

文本主要参考文章:Docker-Jenkins+Selenium+Chrome环境搭建_jenkins容器上 chromedriver放哪里-CSDN博客

1、下载chrome浏览器安装包

下载地址:Google Chrome 网络浏览器

拖拉浏览器至最底部-选择其他平台

选择Linux进行下载

将下载的google-chrome-stable_current_amd64.deb文件上传至linux服务器。并运用docker cp命令将该文件复制到/var/jenkins_home目录

chrome文件赋值权限 chmod +x google-chrome-stable_current_amd64.deb 安装chrome dpkg -i google-chrome-stable_current_amd64.deb 安装报错 google-chrome-stable depends on libxfixes3; however: Package libxfixes3 is not installed. google-chrome-stable depends on libxkbcommon0 (>= 0.4.1); however: Package libxkbcommon0 is not installed. google-chrome-stable depends on libxrandr2; however: Package libxrandr2 is not installed. google-chrome-stable depends on xdg-utils (>= 1.0.2); however: Package xdg-utils is not installed. dpkg: error processing package google-chrome-stable (--install): dependency problems - leaving unconfigured Errors were encountered while processing: google-chrome-stable 安装多余依赖

这个时候我们需要安装多余依赖包

sudo apt-get -f install

重新安装

重新安装 这次我们用sudo安装

sudo dpkg -i google-chrome-stable_current_amd64.deb

安装成功,查看google-chrome版本

google-chrome --version

2、更新chrome版本

因为chrome需要配合chromedriver使用,所以需要保证chrome和chromedriver版本号一致,由上步骤安装的chrome可能无法找到合适的chromedrive版本,由此需要更新chrome版本。

chrome版本下载地址:http://dist.control.lth.se/public/CentOS-7/x86_64/google.x86_64/

chromedrive版本下载地址:https://chromedriver.chromium.org/downloads

我下载使用的版本为:102.0.5005.115

同样将下载的chrome:google-chrome-beta-103.0.5060.24-1.x86_64.rpm文件和chromedrive:chromedriver_linux64.zip上传至linux服务器

使用docker cp 当前存放文件路径 容器id:存放文件的容器路径,复制到容器中

docker /upfile/chrome 19ad147df28c:/var/upfile

将rpm安装包转换为debg格式使用命令alien命令:alien -d rpm包名称

alien命令安装步骤参考链接:Linux软件包转换-deb与rpm互转_deb2rpm-CSDN博客

alien -d google-chrome-stable-102.0.5005.115-1.x86_64.rpm

执行结果如下:

将google-chrome-stable_102.0.5005.115-2_amd64.deb移动至/var/jenkins_home目录,

名字重命名为google-chrome-stable_102_amd64.deb

执行如下代码更新chrome版本

sudo dpkg -i google-chrome-stable_102_amd64.deb

执行结果如下,执行google-chrome --version 查看chrome版本

3、安装chromedriver

将上面上传到docker容器中得chromedriver_linux64.zip使用unzip chromedriver_linux64.zip进行解压

设置权限 chmod +x chromedriver

将驱动放到bin目录下

mv chromedriver /usr/bin/ cp /usr/bin/chromedriver /usr/local/bin/ 权限不足重新赋值

这个我上网查资料发现是权限不足,所以重新给他赋值权限

进入/usr/bin 目录重新给google-chrome赋值

chmod 777 google-chrome 配置驱动环境变量

找出驱动位置

which chromedriver

然后vim /etc/profile

#chromedriver export PATH=$PATH:/usr/local/bin/chromedriver

添加完成之后保存

source /etc/profile

接下来就可以尝试在容器中运行自动化测试脚本

4、常见报错

解决方案:在初始化driver时加入如下参数

chrome_options = Options() chrome_options.add_argument('--headless') # 浏览器不提供可视化页面. linux下如果系统不支持可视化不加这条会启动失败 chrome_options.add_argument('--no-sandbox') # 解决DevToolsActivePort文件不存在的报错 chrome_options.add_argument('--disable-dev-shm-usage') # 大量渲染时候写入/tmp而非/dev/shm chrome_options.add_argument('--disable-gpu') # 谷歌文档提到需要加上这个属性来规避bug chrome_options.add_argument('-–single-process') #以单进程模式运行 Chromium。(启动时浏览器会给出不安全警告) chrome_options.add_argument('window-size=1920x1080') # 指定浏览器分辨率 chrome_options.add_argument('--start-maximized') # 最大化运行(全屏窗口),不设置,取元素会报错 chrome_options.add_argument('--user-data-dir=/home/jenkins/data') chrome_options.add_experimental_option("excludeSwitches", ["enable-automation"]) chrome_options.add_experimental_option('useAutomationExtension', False) self.driver = webdriver.Chrome(options=chrome_options, executable_path='/usr/bin/chromedriver')

chrome_options.add_argument('--user-data-dir=/home/jenkins/data')

并在容器中手动创建目录/home/jenkins/data,并将权限修改为777

chmod -R 777 /home/jenkins/data



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3