Ubuntu 16.04.1 LTSを使用しています。python -V
リターンを実行しますPython 2.7.12
。Seleniumパッケージをインストールするために、それからvirtualenvを構築しています:
pip install -upgrade selenium
ただし、次のpythonスクリプトを使用して試用を実行する場合:
from selenium import webdriver
browser = webdriver.Firefox()
browser.get('http://seleniumhq.org/')
このエラーが発生します:
Traceback (most recent call last):
File "/home/myuser/bin/selenium-experiment.py", line 2, in <module>
browser = webdriver.Firefox()
File "/home/myuser/python_virtualenv/local/lib/python2.7/site-packages/selenium/webdriver/firefox/webdriver.py", line 135, in __init__
self.service.start()
File "/home/myuser/python_virtualenv/local/lib/python2.7/site-packages/selenium/webdriver/common/service.py", line 71, in start
os.path.basename(self.path), self.start_error_message)
selenium.common.exceptions.WebDriverException: Message: 'geckodriver' executable needs to be in PATH.
Exception AttributeError: "'Service' object has no attribute 'process'" in <bound method Service.__del__ of <selenium.webdriver.firefox.service.Service object at 0x7f782c1caa50>> ignored
geckodriver
実行可能ファイルであるため、セレンパッケージのインストールによって提供されるべきであると結論付けましたpip
。どうやらそうではないので、さらに掘り下げました。geckodriver
実行可能ファイルを提供するパッケージがUbuntuにあるはずだと思ったのでapt-file search geckodriver
、検索して結果が見つかりませんでした。
このgeckodriver
実行可能ファイルはどこで入手できますか?
github.com/mozilla/geckodriverから入手してください。
—
edwinksl
なぜセレンのインストールコマンドをピップできないのは、セレンが依存するものをインストールするだけですか?
—
bgoodr
これは、Seleniumとgeckodriverのメンテナーにとっての質問です。私が言えることは、PyPI以外のどこか(この場合はGitHub)からgeckodriverを取得する必要があるということだけです。
—
edwinksl