問題のエラー
以下コードを実行してtest.pyを起動する。
$ python test.py
以下のエラーがでる。
Traceback (most recent call last):
File “test.py”, line 2, in <module>
from selenium import webdriver
ImportError: No module named selenium
seleniumのモジュールがないと言われているけれど、どうしていいのかがわからない。
環境
ざっくりMac
エラー解決まで
初心者の試行錯誤を残しているので最後以外は不必要なコマンドです。
ネットでそれっぽいコマンドを見つけては試した過程です。
$ pip install selenium
上記を実行すると
You are using pip version 19.2.2, however version 19.3.1 is available.
You should consider upgrading via the ‘pip install –upgrade pip’ command.
と怒られるので、言われた通りアップグレード
$ pip install –upgrade pip
しかしpythonを起動しても最初のエラーのまま。
念のため以下も実行。
$ sudo pip install selenium
pythonを起動してもエラー変わらず。
pipじゃなくてpip3が正しいらしい。
$ sudo pip3 install selenium
pythonを起動しても最初のエラーのまま。
検討違いのようなので作戦変更
パスが通っているのか確認。
$ echo $PATH
結果を見て、パスを当たったり足してみても変化なし。
ちょっとまた作戦変更して状況確認。
$ pip list
以下が応答で出てきた文。
Package Version
pip 19.3.1
selenium 3.141.0
setuptools 40.8.0
urllib3 1.25.3
wheel 0.33.4
へぇ。
$ pip3 show selenium
以下が応答で出てきた文。
Name: selenium
Version: 3.141.0
Summary: Python bindings for Selenium
Home-page: https://github.com/SeleniumHQ/selenium/
Author: UNKNOWN
Author-email: UNKNOWN
License: Apache 2.0
Location: /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages
Requires: urllib3
Required-by:
ほぉ。
$ pip3 show webdriver
以下が応答で出てきた文。
WARNING: Package(s) not found: webdriver
WARNING: Package(s) not found: webdriver と書かれておりwebdriverがおかしいのかなと思う。
$ pip3 install selenium
もう一度、だめもとでseleniumをインストールするもなにも変わらない。
なんだか根本的に間違っている気がしていたらおまじないのようなコマンドを発見。試してみる。
$ export PYENV_ROOT=”$HOME/.pyenv”
$ export PATH=”$PYENV_ROOT/bin:$PATH”
$ eval “$(pyenv init -)”
エラーが解消。
pyenvとはPythonの複数あるバージョンを使い分けるコマンドラインツールだそう。
Pythonのバージョンが複数インストールされていて間違った方が読まれてしまったようです。
確かに適当にいろいろやっていたのでその可能性はあったなと納得。
またいつか同じエラーで怒られそうなので備忘録として残しておきたいと思います。