Linux |
您所在的位置:网站首页 › ubuntu下安装谷歌浏览器 › Linux |
文本主要参考文章: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 |