Atomのauto-runnerで'terminal.appと同じPython'を走らせたかった話

環境構築でいろんなサイトをつまみ食いした結果、どうやら私は'いろんなPython'をインストールしまくってたみたいです。今回、AtomでSleniumを使ったコードをatom-runnerで走らせてみたら、'Seleniumインストールされてませんよ'というエラーが出てきました。

 

いやいや、

pip install selenium

ですでにterminal.appでインストール済んでますよって思いました。しかも、terminal.appから

python code_name.py

で走らせると普通に動くんですよね。

いろいろ調べてみるとAtomでは知らせるときにAtom Runnerで使っているPythonとterminal.appで使っているPythonは別物だったんです。

 

この問題には多くの初心者が直面しているようで、一応自分なりの解決法をまとめておきます。

 

 修復前

Atom Runnerが使っていたPythonMacに標準で入っている2系のPython

修復後

Anacondaやterminal.appと同じPythonAtom Runnerから走らせることに成功。

 

修復方法

1.

普段使っているPythonの環境(Anacondaとかterminal.appとか。私の場合はすでにこの2箇所は統合することになぜか成功していた。)で、

import sys
print(sys.executable)

 のコードをPythonとして実行。

ディレクトリのpath?が得られると思うのでコピー。


2.

Atom -> Configをクリック。

f:id:XTJP:20191018154751p:plain

 

3.

config.csonが開かれるので、最後の行に

runner:
    scopes:
        python: "/Users/UserName/anaconda3/bin/python"

を追加。ただし""の中身は1.でコピーしたもの。

"*":

のインデント下に書き込むことになるので注意。

f:id:XTJP:20191018155623p:plain

 

4.

Atomを再起動。これでSeleniumを使ったコードも走るようになってました。