Jupyter Notebook 500: внутренняя ошибка сервера

Я хочу узнать, как использовать Jupyter Notebook. До сих пор мне удалось загрузить и установить его (используя pip), но у меня возникли проблемы с его открытием.

Я открываю его, набрав:

jupyter notebook

в моем терминале. Он открывается в моем браузере с URL:

http://localhost:8888/tree

и я просто получаю большой:

500 : Internal Server Error

сообщение. Может ли кто-нибудь указать мне в правильном направлении, что происходит неправильно?

Полное сообщение об ошибке в моем терминале:

[E 17:53:52.034 NotebookApp] Uncaught exception GET /tree (::1)
    HTTPServerRequest(protocol='http', host='localhost:8888', method='GET', uri='/tree', version='HTTP/1.1', remote_ip='::1', headers={'Accept-Language': 'en-US,en;q=0.8,es;q=0.6', 'Accept-Encoding': 'gzip, deflate, sdch', 'Host': 'localhost:8888', 'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8', 'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.112 Safari/537.36', 'Connection': 'keep-alive', 'Upgrade-Insecure-Requests': '1'})
    Traceback (most recent call last):
      File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/tornado/web.py", line 1443, in _execute
        result = method(*self.path_args, **self.path_kwargs)
      File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/tornado/web.py", line 2800, in wrapper
        return method(self, *args, **kwargs)
      File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/notebook/tree/handlers.py", line 50, in get
        terminals_available=self.settings['terminals_available'],
      File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/notebook/base/handlers.py", line 302, in render_template
        template = self.get_template(name)
      File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/notebook/base/handlers.py", line 298, in get_template
        return self.settings['jinja2_env'].get_template(name)
      File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/Jinja2-2.6-py2.7.egg/jinja2/environment.py", line 719, in get_template
        return self._load_template(name, self.make_globals(globals))
      File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/Jinja2-2.6-py2.7.egg/jinja2/environment.py", line 693, in _load_template
        template = self.loader.load(self, name, globals)
      File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/Jinja2-2.6-py2.7.egg/jinja2/loaders.py", line 127, in load
        code = environment.compile(source, name, filename)
      File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/Jinja2-2.6-py2.7.egg/jinja2/environment.py", line 493, in compile
        self.handle_exception(exc_info, source_hint=source)
      File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/notebook/templates/tree.html", line 8, in template
        data-base-url="{{base_url | urlencode}}"
    TemplateAssertionError: no filter named 'urlencode'
[E 17:53:52.819 NotebookApp] {
      "Accept-Language": "en-US,en;q=0.8,es;q=0.6",
      "Accept-Encoding": "gzip, deflate, sdch",
      "Host": "localhost:8888",
      "Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8",
      "User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.112 Safari/537.36",
      "Connection": "keep-alive",
      "Upgrade-Insecure-Requests": "1"
    }
[E 17:53:52.819 NotebookApp] 500 GET /tree (::1) 874.29ms referer=None

ИЗМЕНИТЬ

При попытке обновления ipython в соответствии с рекомендациями было создано следующее сообщение об ошибке:

Exception:
Traceback (most recent call last):
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pip/basecommand.py", line 209, in main
    status = self.run(options, args)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pip/commands/install.py", line 317, in run
    prefix=options.prefix_path,
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pip/req/req_set.py", line 732, in install
    **kwargs
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pip/req/req_install.py", line 835, in install
    self.move_wheel_files(self.source_dir, root=root, prefix=prefix)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pip/req/req_install.py", line 1030, in move_wheel_files
    isolated=self.isolated,
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pip/wheel.py", line 247, in move_wheel_files
    prefix=prefix,
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pip/locations.py", line 142, in distutils_scheme
    i = d.get_command_obj('install', create=True)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/dist.py", line 845, in get_command_obj
    klass = self.get_command_class(command)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/setuptools/dist.py", line 430, in get_command_class
    self.cmdclass[command] = cmdclass = ep.load()
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pkg_resources/__init__.py", line 2229, in load
    return self.resolve()
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pkg_resources/__init__.py", line 2235, in resolve
    module = __import__(self.module_name, fromlist=['__name__'], level=0)
ImportError: No module named command.install

Ответ 1

Имел аналогичную проблему. Исправлено это после обновления ipython с помощью этой команды

sudo pip install --upgrade "ipython[all]"

Примечание. Обязательно введите ipython с двойными кавычками и [all]

Ответ 2

попробуйте сначала обновить концентратор Jupyter

pip install --upgrade jupyterhub


pip install --upgrade --user nbconvert

работал для меня на Windows 10, а также.

Ответ 3

Я также столкнулся с этой проблемой. Основная причина в моем случае состояла в том, что у меня уже был Jinja2 с правами root (с использованием sudo pip install, прежде чем я понял).

Мое решение состояло в том, чтобы удалить Jinja2 с помощью sudo pip uninstall (что было необходимо, потому что оно было установлено с правами root) и повторно запустить pip install jupyter, чтобы переустановить его с помощью обычных прав пользователя.

$ sudo pip uninstall Jinja2
$ pip install jupyter

При использовании sudo для установки здесь работает, что делает проблему хуже в долгосрочной перспективе, потому что все ее пакеты установлены с правами root, что приводит к дальнейшим проблемам, подобным этому, в будущем с другими пакетами. Это вроде как ногами, которые могут идти по дороге.

Многие, конечно, не будут заботиться, пока это работает. Но для тех, о которых я думал, я бы сказал.

Нет никакого способа точно знать, что такое нарушительный пакет, но он, вероятно, будет одним из тех, что находятся в трассировке стека. Я заметил Jinja2 как один, который я смутно помнил с ранних лет в Python, поэтому я начал там, и это сработало.

Ответ 4

У меня работает обновление пакета nbconvert. pip install --upgrade --user nbconvert

Ответ 5

У меня была эта проблема по состоянию на 22/03/2019, и мне помогло обновить conda, а затем обновить jupyter с помощью pip:

conda update --all
pip install jupyter --upgrade

Ответ 6

Простое решение, которое сработало для меня: на терминале выполните следующую команду -

jupyter troubleshoot | grep jupyter | grep /

Здесь будет указан путь к различным версиям jupyter, установленным на вашем компьютере. Попробуйте поочередно все версии и удалите двоичные файлы, содержащие ошибку 500. Затем вы можете изменить ссылку на jupyter, добавив строку (псевдоним jupyter = "/usr/local/bin/jupyter") в файл ~/.bashrc или вызвать jupyter с абсолютным путем.

Примечание: это не самое чистое решение, но оно работает.

Ответ 7

У меня была такая же проблема, и мое решение обновляло пакет Jinja2 до версии Jinja2-2.8.

Чтобы обновить его, я использовал команду easy_install следующим образом:

sudo easy_install -U python-jinja2[all]

После этого была исправлена ​​ошибка 500: Внутренняя ошибка сервера.

Ответ 8

Использовать этот ::

python2 -m pip install ipykernel
python2 -m ipykernel install --user

python3 -m pip install ipykernel
python3 -m ipykernel install --user

Ответ 9

У меня была та же проблема, и мне было немного больно, пока мне не удалось ее исправить. Волшебная линия работала для меня была

conda install -c conda-forge jupyter_contrib_nbextensions 

Ответ 10

Эта ошибка связана с несоответствиями. Обновление Jupyter решает проблему. Используйте следующую команду, если вы используете Anaconda- conda update jupyter

Ответ 11

Попробовав все решения на этой странице безуспешно, мне помог вариант @kruger, просто так:

pip install --upgrade nbconvert

Ответ 12

У меня также было "500: Внутренняя ошибка сервера". conda update --all решило мою проблему. Спасибо, Гихан Самарасингхе.