Jupyter Notebook
、便利ですよね。
ただ、起動するときに
cd "ルートのパス"
jupyter notebook
と入力する必要があり、ちょっと面倒です*1。
また、Pythonの仮想環境にJupyter
をインストールした場合、
cd "jupyterルート" . "仮想環境起動" jupyter notebook
のようになり、さらにコマンドが長くなります。
これを、Windowsのスクリプト(bat
、PowerShell
)を使って、起動できるようにする、というのが当記事の目標です。
環境
動作確認した環境は、以下の通りです。
名称 | バージョン |
---|---|
OS | WIndows 10 Professional 64bit |
Python | 3.6.5 |
jupyter | 1.0.0 |
PowerShell | 5.1.17134.48 |
PowerShellは、いわゆるデスクトップバージョンです。
また、仮想環境はvenv
を使用して作成しています。
Anaconda
等は使用せず、pip
にてjupyter
をインストールした環境です。
PowerShell利用
名称 | 値 |
---|---|
仮想環境名 | myvenv |
仮想環境ルート | C:\seminar\myvenv |
Jupyterルート | C:\Seminar |
上記の値なら、
Set-Location "C:\seminar" . "C:\seminar\myvenv\Scripts\Activate.ps1" jupyter notebook
のようなスクリプトで、Jupyter Notebook
で起動できます*2。
スクリプト保存場所は、ローカルならどこでも良いです。
権限不足
上記のスクリプトで起動はできますが、ログインユーザーがPowerShell
の実行権限*3を持たない場合があります。
権限を振ることはできるのですが、面倒です。
ここに、権限付与について書いてあります。必要なら設定してください。
batと組み合わせる
バッチファイルからPowerShellを起動すれば、権限不足でもPowerShellスクリプトを起動できます。
powershell -NoProfile -ExecutionPolicy RemoteSigned .\execute_jupyter.ps1
同一階層にこのバッチファイルと、PowerShellスクリプトを置いて、バッチファイルを起動すると、
のように、batファイルからJupyter Notebook
を起動できるようになります。
おわりに
今回も小ネタでした。
私見ですが、Jupyter Notebook
を使うことになれば、pip
等も多用することになります。
そのため、コマンドの扱いには慣れておいたほうが良いです。
jupyter
を仮想環境に入れている理由ですが、依存ライブラリが多く、あまり本体をごちゃごちゃにしたくない、という思いからです。
仮想環境を自分で作れる時点で、あまり今回の知識は使わない気はしますが、楽できる一手段として考えていただければよいと思います。
*1:慣れろ、と言われるとそれまでだが
*2:上記内容を保存し、「~.ps1」という拡張子で保存し、ファイル右クリックで「PowerShellで実行」を選択する
*3:PowerShellのGet-ExecutionPolicyのこと