jupyter notebook起動時に自動でブラウザが開かない

  • 55
    Like
  • 12
    Comment

jupyter nootbookを開こうとすると以下のようなエラーが表示され自動でブラウザが開かれなくなりましたのでその対処法を調べました。おそらくMac OSのアップデートが原因だと考えられます。

0:97: execution error: "http://localhost:8888/tree?token=2ab101b71b3d00b692865cb0039257b68afa12c9d57615fd"は“open location”メッセージを認識できません。 (-1708)

または

0:97: execution error: "http://localhost:8888/tree?token=2ab101b71b3d00b692865cb0039257b68afa12c9d57615fd" doesn’t understand the “open location” message. (-1708)

環境

  • MacOS 10.12.5
  • GoogleChrome 58.0.3029.110 (64-bit)
  • Firefox 52.0.2
  • Safari 10.1.1
  • python 3.5.1
  • jupyter 4.3.0

解決策

ブラウザに依存しない方法

以下を.zshrcに追加することで解決。

~/.zshrc
export BROWSER=open

以上で解決しない場合は以下を試してみてください。

ブラウザがChromeの場合

以下を.zshrcに追加することで解決しました。

~/.zshrc
export BROWSER=/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome

zshでない場合は.zshrc部分を.bash_profileなどに適宜変更してください。

ブラウザがSafari,Firefoxの場合

以下を~/.jupyter/jupyter_notebook_config.pyに追加することで解決します。

~/.jupyter/jupyter_notebook_config.py
c.NotebookApp.browser = u'Safari'

または

~/.jupyter/jupyter_notebook_config.py
c.NotebookApp.browser = u'firefox'

まとめ

Safariやfirefoxのやり方をchromeでしてみたり。chromeのやり方をSafariやfirefoxでやるとうまく行きませんでした。
できれば上のどちらかに統一したいですね。できたよーということがあればコメントくださると助かります。
また、自動でopenされなくて良いと言う場合は↑のようなことをする必要はありません。
今回は応急処置的に対処しましたが、公式で対応されれば自分たちで対策する必要がなくなると思われます。

参考

https://github.com/jupyter/notebook/issues/2438