Linux配置python selenium + Google Chrome环境

准备

步骤

  • 安装Chrome
    • dpkg -i *.deb
    • 2019.07.30更新:因为国内可以直连下载,可以通过添加chrome源的方式安装chrome
      安装密钥
      wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add -

      添加源地址

      sudo sh -c 'echo "deb http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google-chrome.list'

      更新并安装Chrome

      sudo apt update
      sudo apt install google-chrome-stable
  • 安装Chrome Driver
    • 解压下载的linux diver.zip,得到chromedriver文件
    • 将其链接到/usr/local/bin下
      ln -s /path/to/driver /usr/local/bin/chromedriver
    • 终端输入 chromedriver ,有输出代表成功安装chrome以及driver
  • python使用webdriver
    • 最新版Chrome已经支持在命令行运行,因此不再需要安装Xvfb
    • 在命令行界面使用chrome需要加入参数“-headless”
    • 如果使用root用户运行chrome,还需要加参数“–no-sandbox”
    • 使用webdriver的ChromeOptions()将上面两个参数加到Chrome的启动参数中,即可在命令行下使用selenium

注意

  • 上图中还圈出了启动时指定了chromedriver的绝对路径,虽然在命令行下不指定路径不会影响使用,但在某些情况下(如:将脚本写入crontab定时执行)没有默认的PATH,此时Chrome将无法正常启动。