web-dev-qa-db-ja.com

pythonパッケージをpython3.6フォルダーにインストールする方法は?

.tar.gzを抽出し、python setup installを実行すると、Seleniumがにインストールされます。

....
creating /usr/local/lib/python2.7/dist-packages/Selenium-3.4.3-py2.7.Egg
Extracting Selenium-3.4.3-py2.7.Egg to /usr/local/lib/python2.7/dist-packages
Adding Selenium 3.4.3 to easy-install.pth file

Installed /usr/local/lib/python2.7/dist-packages/Selenium-3.4.3-py2.7.Egg
.....

ここで、pythonはpython 2.7ですが、python3.6ではありません


実行時に、

$ python functionalTest.py 

それはうまくいきます

だが

$ python3.6 functionalTest.py

与える、エラー:

ModuleNotFoundError: No module named 'Selenium'

以下に示すように、Ubuntuにpython3.6を使用してSeleniumを正常にインストールできなかったため、

$ ls setup*
setup.cfg  setup.py
$ python3.6 setup install
python3.6: can't open file 'setup': [Errno 2] No such file or directory
$ python3.6 setup.py install
Traceback (most recent call last):
  File "setup.py", line 22, in <module>
    from setuptools import setup
ModuleNotFoundError: No module named 'setuptools'
.....
Original exception was:
Traceback (most recent call last):
  File "setup.py", line 22, in <module>
    from setuptools import setup
ModuleNotFoundError: No module named 'setuptools'
$ 

setuptoolsをインストールした後、以下は観察結果です。

$ python3.6 setup.py install
.....
creating /usr/local/lib/python2.7/dist-packages/Selenium-3.4.3-py2.7.Egg
Extracting Selenium-3.4.3-py2.7.Egg to /usr/local/lib/python2.7/dist-packages
Selenium 3.4.3 is already the active version in easy-install.pth

Installed /usr/local/lib/python2.7/dist-packages/Selenium-3.4.3-py2.7.Egg
Processing dependencies for Selenium==3.4.3
Finished processing dependencies for Selenium==3.4.3
$ cd /usr/local/lib/python
python2.7/ python3.5/ python3.6/ 
$ 
$ easy_install --version
setuptools 20.7.0 from /usr/lib/python2.7/dist-packages (Python 2.7)
$ pip --version
pip 8.1.1 from /usr/lib/python2.7/dist-packages (python 2.7)
$

質問:

1)Selenium、easy_install、pipが/usr/local/lib/python2.7/dist-packagesにインストールされるのはなぜですか?これらのパッケージは/usr/local/lib/python3.6/dist-packagesに必要です。

2)python3.6がセレンを選択するように構成するにはどうすればよいですか?

3)明示的にpython --versionを要求されない限り、python3.6 --versionpython 3.6を表示しないのはなぜですか?

1
overexchange
  1. パッケージの名前(Selenium-3.4.3-py2.7。Egg)を考えると、これは=のパッケージです。 Python 2.7。Python 3.6のパッケージを見つけます。
  2. Python 3.6の適切なパッケージをインストールします
  3. 多くのスクリプトが2.7用に作成されているため、ほとんどのLinuxディストリビューションのデフォルトではpythonは2.7のままです

私のUbuntu16.04では、python3リポジトリからのパッケージはPython 3.5.3(Sudo apt install python3)。 Seleniumはリポジトリからインストールすることもできます(Sudo apt install python3-Selenium)。

2
xenoid