如何在 ubuntu 16.04 上安装适用于 python3 selenium 的 firefoxdriver webdriver?

cha*_*rre 3 python selenium python-3.x selenium-webdriver python-3.5

我在 Ubuntu 16.04 上安装了 python3-selenium apt 包。安装时,收到一条消息:

Suggested packages:
chromedriver firefoxdriver
The following NEW packages will be installed:
python3-selenium
Run Code Online (Sandbox Code Playgroud)

当我尝试运行以下 python 代码时,

#! /usr/bin/python3.5
from selenium import webdriver
import time

def get_profile():
    profile = webdriver.FirefoxProfile()
    profile.set_preference("browser.privatebrowsing.autostart", True)
    return profile

def main():
    browser = webdriver.Firefox(firefox_profile=getProfile())

    #browser shall call the URL
    browser.get("http://www.google.com")
    time.sleep(5)
    browser.quit()

if __name__ == "__main__":
    main()
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

回溯(最近一次调用最后一次):文件“./test.py”,第 19 行,在 main() 文件“./test.py”,第 11 行,在主浏览器 = webdriver.Firefox(firefox_profile=getProfile())文件“/usr/lib/python3/dist-packages/selenium/webdriver/firefox /webdriver.py”,第77行,在init self.binary中,超时),文件“/usr/lib/python3/dist-packages/selenium /webdriver/firefox/extension_connection.py”,第 47 行,在init self.profile.add_extension() 文件“/usr/lib/python3/dist-packages/selenium/webdriver/firefox/firefox_profile.py”,第 91 行,在add_extension self._install_extension(extension) 文件“/usr/lib/python3/dist-packages/selenium/webdriver/firefox/firefox_profile.py”,第 251 行,在 _install_extensioncompressed_file = zipfile.ZipFile(addon, 'r') 文件“ /usr/lib/python3.5/zipfile.py”,第 1009 行,init self.fp = io.open(file, filemode) FileNotFoundError: [Errno 2] 没有这样的文件或目录: '/usr/lib /firefoxdriver /webdriver.xpi'

我确实在 Ubuntu 存储库中搜索了名为 firefoxdriver 的软件包,但不存在。我该如何解决这个问题?

任何有关安装网络驱动程序的帮助都值得赞赏!

小智 5

您丢失的包名为firefox-geckodriver. 您可以通过 https://github.com/mozilla/geckodriver/releases 获取它sudo apt-get install firefox-geckodriver,或者从https://github.com/mozilla/geckodriver/releases下载,将其放入您的$PATH(例如/usr/bin)中并使其可执行。