如何在 Ubuntu 中安装 geckodriver?

myS*_*Sun 98 python software-installation

我在 Python 中使用 Selenium,我尝试运行 webdriver 函数:

default_browser = webdriver.Firefox()

此异常:

WebDriverException: Message: 'geckodriver' executable needs to be in PATH.

geckodriver在本站:https : //github.com/mozilla/geckodriver

但是如何在 Ubuntu 16.04 中安装,我可以解决这个问题吗?

小智 147

以下是步骤:

  1. 转至geckodriver 发布页面。为您的平台查找最新版本的驱动程序并下载。例如:

    wget https://github.com/mozilla/geckodriver/releases/download/v0.24.0/geckodriver-v0.24.0-linux64.tar.gz
    
    Run Code Online (Sandbox Code Playgroud)
  2. 使用以下命令提取文件:

    tar -xvzf geckodriver*
    
    Run Code Online (Sandbox Code Playgroud)
  3. 使其可执行:

    chmod +x geckodriver
    
    Run Code Online (Sandbox Code Playgroud)
  4. 将驱动程序添加到您的 PATH 以便其他工具可以找到它:

    export PATH=$PATH:/path-to-extracted-file/.
    
    Run Code Online (Sandbox Code Playgroud)

有很多方法可以做到这一点。以上在 Ubuntu 16.10 64 位上对我有用。

  • 第四步可以改为`sudo mv geckodriver /usr/local/bin/` (87认同)
  • 谢谢@TulioCasagrande。第 4 步对我不起作用,但您的命令起作用了。 (2认同)

Cor*_*erg 25

在 Ubuntu 上安装 geckodriver 的手动步骤

  • 访问https://github.com/mozilla/geckodriver/releases
  • 下载最新版本的“geckodriver-vX.XX.X-linux64.tar.gz”
  • 解压压缩包 ( tar -xvzf geckodriver-vX.XX.X-linux64.tar.gz)
  • 赋予geckodriver( chmod +x geckodriver)可执行权限
  • geckodriver二进制文件移动到/usr/local/bin系统 PATH 上的任何位置。

在 Ubuntu 上安装 geckodriver 的脚本

#!/bin/bash

INSTALL_DIR="/usr/local/bin"

json=$(curl -s https://api.github.com/repos/mozilla/geckodriver/releases/latest)
url=$(echo "$json" | jq -r '.assets[].browser_download_url | select(contains("linux64"))')
curl -s -L "$url" | tar -xz
chmod +x geckodriver
sudo mv geckodriver "$INSTALL_DIR"
echo "installed geckodriver binary in $INSTALL_DIR"
Run Code Online (Sandbox Code Playgroud)

  • 我没有经历过 - 有我自己的脚本 - 但是这种严肃的脚本,使用 `jq` 并且最多避免硬编码的东西应该总是被赞成。 (3认同)

San*_*eep 24

可在 sysadmin 脚本 (bash/ansible) 中使用的 Webdriver 安装(静默模式)。

## Geckodriver
wget https://github.com/mozilla/geckodriver/releases/download/v0.23.0/geckodriver-v0.23.0-linux64.tar.gz
sudo sh -c 'tar -x geckodriver -zf geckodriver-v0.23.0-linux64.tar.gz -O > /usr/bin/geckodriver'
sudo chmod +x /usr/bin/geckodriver
rm geckodriver-v0.23.0-linux64.tar.gz

## Chromedriver
wget https://chromedriver.storage.googleapis.com/2.29/chromedriver_linux64.zip
unzip chromedriver_linux64.zip
sudo chmod +x chromedriver
sudo mv chromedriver /usr/bin/
rm chromedriver_linux64.zip
Run Code Online (Sandbox Code Playgroud)