Hanatare's PaPa

Make life a little richer.

Virtual Space of Hanatare's PaPa

人生をほんの少しだけ充実させる

【Jupyter Notebook】初期ディレクトリ変更をしたらJupyter Notebookが起動できなくなった失敗談

f:id:nothing-title:20211103225357p:plain

Jupyter Notebookの初期ディレクトリを変更するために設定ファイルの作成・編集を行いました。その過程で、Jupyter Notebookのショートカットのプロパティを編集をしたところ、 Jupyter Notebookが起動しなくなりました。今回の記事ではその失敗談と修正方法も含めて、Jupyter Notebook起動時の初期ディレクトリの変更方法と、Jupyter Notebookの起動ブラウザの変更方法もご紹介します。

記事のポイント
  • Jupyter Notebookの初期ディレクトリ変更
  • Jupyter Notebook起動時失敗時の対処方法
  • (おまけ)Jupyter Notebook起動時のブラウザを変更

前提環境

今回使用している環境をまずはご紹介します。

  • Windows10 Pro
  • Anacondaインストール済

Anacondaをインストールされていない方は事前にインストールしたあとで、本記事と自身の環境を照らし合わせて確認いただくほうがより理解していただきやすいかと思います。

Jupyter Notebookの初期ディレクトリを変更する

Anaconda プロンプトを以下の手順で起動します。

「スタート > Anaconda3 > Anaconda Prompt」

f:id:nothing-title:20211103110922p:plain

Anaconda プロンプトが起動したら以下のコマンドを入力してJupyter Notebookの設定ファイルを作成します。

「jupyter notebook --generate-config」

> jupyter notebook --generate-config
Writing default config to: C:\Users\username\.jupyter\jupyter_notebook_config.py

設定ファイルの作成場所はコマンドの実行結果を確認してください。上記の例では青線部分になります。

「Writing default config to: C:\Users\username.jupyter\jupyter_notebook_config.py

作成されたjupyter_notebook_config.pyファイルを開きます。 以下のような内容のファイルが表示されます。 f:id:nothing-title:20211103111819p:plain

ファイルから以下の記述を探します。

# c.NotebookApp.notebook_dir = ''

コメントアウト(#)を外して、起動時の初期ディレクトリに指定したいパスを記述し、保存します。 ※以下の例でバックスラッシュを2回続けて記載しているのは、「\」がPythonではエスケープ文字になるため、2度続けて記載することで\を有効にするためです。

c.NotebookApp.notebook_dir = 'C:\\work\\Python\\'

以降の手順は人によって不要の場合があります。一度Jupyter Notebookを再起動し、初期ディレクトリの変更状態を確認してください。

私の環境下ではJupyter Notebookを再起動しても初期ディレクトリが変更されませんでした。変更が確認できなかった場合は起動しているJupyter Notebookのショートカットのプロパティを開きます。 「スタート > Anaconda3 > Jupyter Notebookを右クリック > その他 > ファイルの場所を開く > JupyterNotebookを右クリック > プロパティ」 f:id:nothing-title:20211103114355p:plain

ショートカットのプロパティから赤枠のリンク先を確認します。 f:id:nothing-title:20211103114533p:plain

末尾に%USERPROFILE%という記載があれば、この記載を消して、Jupyter Notebookを再起動すると、初期ディレクトリが変更されます。

Jupyter Notebook起動時失敗時の対処方法

今回の私の失敗談は、ショートカットのプロパティを編集したことによって、Jupyter Notebookが起動しなくなったことでした。 原因はプロパティのリンク先に入力できる文字数が255文字以内であることを把握しておらず、記載内容を十分に確認せず保存したことでした。 記載したと思ったパスが途中までしか入力されず、そのまま適用をしてしまったため、起動時にエラーを起こしていました。 この255文字制限はWindowsの仕様のため、今回はWindowsの環境変数を使って問題を解消しました。パスに対しての環境変数の例を2つ以下に上げておきます。

置き換え前 対応環境変数
C:\Users\username\AppData\Local %localappdata%
C:\Users\username %USERPROFILE%

私が修正した方法は以下のとおり、anaconda3までのパスを環境変数に置き換えて記載し適用をしました。

  • (変更前)C:\Users\username\AppData\Local\anaconda3\python.exe
  • (変更後)%localappdata%\anaconda3\python.exe

(おまけ)Jupyter Notebookを起動する際のブラウザを変更する

私の職場は残念なのですがIEを標準ブラウザとしており、その設定変更ができません。そのため、Jupyter Notebookを起動するとIEで表示されてしまうため Chromeで開くように設定変更をしました。

初期ディレクトリを変更したときに作った設定ファイルを編集します。

C:\Users\username.jupyter\jupyter_notebook_config.py

Chromeで開くようにする場合は以下の記述を末尾に追記します。

※chrome.exeの配置先は標準的な配置先で記載していますが、環境によって変更をしてください。

import webbrowser
webbrowser.register('chrome', None, webbrowser.GenericBrowser('C:\\Program Files (x86)\\Google\\Chrome\\Application\\chrome.exe'))
c.NotebookApp.browser = 'chrome'

Firefoxで開くようにする場合は以下の記述を末尾に追記します。

※firefox.exeの配置先は標準的な配置先で記載していますが、環境によって変更をしてください。

import webbrowser
webbrowser.register('firefox', None, webbrowser.GenericBrowser('C:\\Program Files (x86)\\Mozilla Firefox\\firefox.exe'))
c.NotebookApp.browser = 'firefox'

ファイルを保存し、Juptyer Notebookを再度起動すると指定のブラウザで起動するようになります。

まとめ

Jupyter NotebookはPythonを使っての開発を行う上で非常に便利なツールです。今回はJupyter Notebookの設定を変更した際の失敗談を交えて初期ディレクトリの変更方法、 起動ブラウザの変更方法を紹介しました。

今後はPythonのプログラムを触りながらJupyter Notebookの設定についても学んでいきたいと思います。学んだことはまたこのブログで紹介いたします。 最後まで読んでいただきありがとうございました。