【Selenium】Debian+Selenium+ChromeDriver

清疚 2021-09-26 10:50 557阅读 0赞

测试版本说明

Debian 9.0 64位
Selenium 3.4.0
chrome 63
ChromeDriver 2.34
Java 1.8.0

安装chrome

需要在服务器上装chrome浏览器:

  1. wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
  2. sudo apt-get -f install
  3. dpkg -i google-chrome-stable_current_amd64.deb

如果提示错误:

  1. dpkg: error processing package google-chrome-stable (--install):

请执行:

  1. sudo apt-get upgrade
  2. sudo apt-get update
  3. sudo apt-get -f install
  4. dpkg -i google-chrome-stable_current_amd64.deb

之后就不会报错了,安装成功的话可以查看到安装路径以及安装的版本:
这里写图片描述

下载chromedriver

要根据chrome浏览器的版本对应下载driver驱动的版本:
下载地址:http://chromedriver.storage.googleapis.com/index.html










































































chromedriver版本 支持的Chrome版本
v2.34 v61-63
v2.33 v60-62
v2.32 v59-61
v2.31 v58-60
v2.30 v58-60
v2.29 v56-58
v2.28 v55-57
v2.27 v54-56
v2.26 v53-55
v2.25 v53-55
v2.24 v52-54
v2.23 v51-53
v2.22 v49-52
v2.21 v46-50
v2.20 v43-48
v2.19 v43-47

安装Xvfb

  1. sudo apt-get install xvfb

安装好后执行:
Xvfb -ac :7 -screen 0 1280x1024x8 -extension RANDR -nolisten inet6 &
export DISPLAY=:7 (和上一步的number号相同)

由于每次需要运行程序前都需要启动一次xvfb太麻烦,所以直接写一个开机自启动脚本,这样下次就直接执行程序就可以了。我们需要将脚本写在/etc/rc.local路径下,开机之后会执行/etc/rc.local文件中的脚本,在exit 0前面添加以下内容:

  1. #! /bin/bash
  2. case "$1" in
  3. start)
  4. /usr/bin/Xvfb :7 -ac -screen 0 1280x1024x8 -extension RANDR -nolisten inet6 &
  5. export DISPLAY=:7
  6. ;;
  7. stop)
  8. killall Xvfb
  9. ;;
  10. esac

关于错误:Chrome failed to start: exited abnormally

这个错误我遇到了两次,第一次的时候只需要安装Xvfb就成功解决了,可第二次我已经安装了Xvfb且正常打开了仍然提示了这样的错误,原因是因为需要在代码里加上一下内容(很关键!):

  1. // 禁用扩展
  2. chromeOptions.addArguments("--disable-extensions");
  3. // 使用无头模式运行
  4. chromeOptions.addArguments("--headless");
  5. // 禁用GPU
  6. chromeOptions.addArguments("--display-gpu");
  7. // 启动无沙盒模式运行
  8. chromeOptions.addArguments("--no-sandbox");

可能是因为chrome占内存过大而卡屏,使得chrome无法正常打开
并且记得chromedriver的权限要设置为可执行:

  1. chmod -R 777 chromedriver

参考资料:
unkown error:Chrome failed to start: exited abnormally
chrome安装错误解决
chromedriver与chrome版本映射表
chrome in linux
chrome命令行大全
添加开机启动项的2种方法

发表评论

表情:
评论列表 (有 0 条评论,557人围观)

还没有评论,来说两句吧...

相关阅读