Ipython-сервер не может запускаться: ни один модуль с именем notebook.notebookapp

Я пытаюсь настроить ipython-сервер, следуя нескольким учебным пособиям (поскольку ни один из них не был в моем случае). Пару дней назад мне удалось довести это до такой степени, что он запускался, но затем не смог получить к нему доступ через url. Сегодня он больше не запускается, и я не могу много узнать об этой конкретной ошибке:

Traceback (most recent call last):
  File "/usr/local/bin/ipython", line 9, in <module>
    load_entry_point('ipython==4.0.0-dev', 'console_scripts', 'ipython')()
  File "/usr/local/lib/python2.7/dist-packages/ipython-4.0.0_dev-py2.7.egg/IPython/__init__.py", line 118, in start_ipython
    return launch_new_instance(argv=argv, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/traitlets-4.0.0-py2.7.egg/traitlets/config/application.py", line 591, in launch_instance
    app.initialize(argv)
  File "<string>", line 2, in initialize
  File "/usr/local/lib/python2.7/dist-packages/traitlets-4.0.0-py2.7.egg/traitlets/config/application.py", line 75, in catch_config_error
    return method(app, *args, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/ipython-4.0.0_dev-py2.7.egg/IPython/terminal/ipapp.py", line 302, in initialize
    super(TerminalIPythonApp, self).initialize(argv)
  File "<string>", line 2, in initialize
  File "/usr/local/lib/python2.7/dist-packages/traitlets-4.0.0-py2.7.egg/traitlets/config/application.py", line 75, in catch_config_error
    return method(app, *args, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/ipython-4.0.0_dev-py2.7.egg/IPython/core/application.py", line 386, in initialize
    self.parse_command_line(argv)
  File "/usr/local/lib/python2.7/dist-packages/ipython-4.0.0_dev-py2.7.egg/IPython/terminal/ipapp.py", line 297, in parse_command_line
    return super(TerminalIPythonApp, self).parse_command_line(argv)
  File "<string>", line 2, in parse_command_line
  File "/usr/local/lib/python2.7/dist-packages/traitlets-4.0.0-py2.7.egg/traitlets/config/application.py", line 75, in catch_config_error
    return method(app, *args, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/traitlets-4.0.0-py2.7.egg/traitlets/config/application.py", line 487, in parse_command_line
    return self.initialize_subcommand(subc, subargv)
  File "<string>", line 2, in initialize_subcommand
  File "/usr/local/lib/python2.7/dist-packages/traitlets-4.0.0-py2.7.egg/traitlets/config/application.py", line 75, in catch_config_error
    return method(app, *args, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/traitlets-4.0.0-py2.7.egg/traitlets/config/application.py", line 418, in initialize_subcommand
    subapp = import_item(subapp)
  File "build/bdist.linux-x86_64/egg/ipython_genutils/importstring.py", line 31, in import_item
ImportError: No module named notebook.notebookapp

Итак, о настройке, я установил дистрибутив anaconda библиотек ipython, pyzmq и торнадо. Я создал профиль nbserver, а файл конфигурации следующий: ipython.config.py:

c = get_config()
c.IPKernalApp.pylab = 'inline'
c.NotebookApp.certfile = u'/home/ludo/.ipython/profile_nbserver/mycert.pem'
c.NotebookApp.ip = '*'
c.NotebookApp.open_browser = False
c.NotebookApp.password = u'sha1:e6cb2aa9a[...]'
c.NotebookApp.port = 9999
c.NotebookManager.notebook_dir = u'/var/www/ipynb/'
c.NotebookApp.base_project_url = '/ipynb/'
c.NotebookApp.base_kernel_url = '/ipynb/'
c.NotebookApp.webapp_settings = {'static_url_prefix':'/ipynb/static/'}

Я действительно не знаю, где искать подсказки больше, и мне, вероятно, не хватает лучшего понимания того, как все это работает, чтобы понять это. Моя конечная цель состоит в том, чтобы затем использовать ответ на этот вопрос на SO, чтобы завершить настройку за Apache и в конечном итоге подключить его к colaboratory - но похоже, что он должен запускаться первым.

Большое спасибо за любую помощь:)

Ответ 1

Это должно устранить проблему:

pip install jupyter

Ответ 2

Я получил ту же проблему при обновлении IPython. На данный момент ответ был написан, это была ошибка, связанная с последней версией 4. Если возникает аналогичная проблема, для которой вы хотите вернуться к стабильной версии 3.2.1:

pip uninstall -y IPython
pip install ipython==3.2.1

Ответ 3

Итак, чтобы закрыть этот поток, и в случае, если это кому-то поможет, моя ошибка состояла в том, чтобы установить и использовать dev-версию ipython вслепую после учебника, думая, что я использовал экземпляр anaconda, который я установил ранее (что даже не было мой ПУТЬ).

Во всяком случае я:

  • удалил этот экземпляр ipython dev
  • добавлен anaconda/bin в мой путь zsh (добавьте его в ~/.zshrc - почему он даже не был на моем пути после установки)//на данный момент сервер запускается нормально, но я не смог получить к нему доступ мой браузер → проблемы с брандмауэром.
  • открыл мой порт выбора в моем брандмауэре (help для linode или ubuntu в целом)

И теперь все работает отлично.

Ответ 4

Кто-то упомянул об этом в комментарии, и он (почти) работал на меня:

pip install ipython[notebook]

pip дал ошибку о несоответствии хэша. Однако в конечном итоге это было:

sudo port install py27-notebook

И для py3:

sudo port install py35-notebook

Ответ 5

Не следует пытаться установить из ветки мастера github, если вы сейчас не делаете то, что делаете. Удалите то, что вы установили, и придерживайтесь стабильной версии.

Если вы хотите работать над версией разработки, спросите в списке рассылки developpement. Некоторые знания о том, как отладить это, вероятно, потребуются.