Jupyter "500: Внутренняя ошибка сервера"; «ImportError: невозможно импортировать имя ConverterMapping» - PullRequest
1 голос
/ 10 июля 2019

Я пытаюсь использовать ноутбук Jupyter в новой версии Ubuntu 19.04. Я прошел обычные шаги установки, но Jupyter не работает. Когда я пытаюсь открыть блокнот, я получаю

500 : Internal Server Error

Когда я смотрю в терминал, я вижу, что Jupyter обнаружил ошибку

ImportError: cannot import name ConverterMapping

Я искал и нашел вопросы / ответы по другим причинам внутренней ошибки сервера в Jupyter, но я не могу найти способ исправить проблему ConverterMapping. Я попытался удалить (pip uninstall ...) и переустановить (pip install --user ...) все пакеты, связанные с Jypyter, но это не дало никаких результатов.

Любые идеи или предложения будут с благодарностью.

1 Ответ

0 голосов
/ 10 июля 2019

(отвечая на мой вопрос)

По моему опыту, эти проблемы обычно вызваны проблемами совместимости между пакетами python, установленными через apt, и пакетами, установленными через pip.

К сожалению, я не смог восстановить длительную серию шагов, предпринятых для установки среды jupyter / scipy / etc. Некоторые пакеты должны быть загружены через apt, а другие через pip, что приводит к конфликтам версий.

У меня есть частичное исправление:

  • После этого ответа я запустил python -c "import site; print(site.USER_BASE)", чтобы найти, куда pip устанавливает --user пакетов
  • Для меня это было ~/.local
  • Я переместил ~/.local в ~/.local_disabled для улучшения всех локально установленных пакетов
  • В этот момент Jupyter снова заработал (он должен быть установлен вместе с системным питоном через apt).
  • Я добавил только минимальное подмножество пользовательских пакетов и буду следить за несовместимостью.
  • Я полагаю, что избегание использования Jupyter / ipython через apt может быть лучшим способом избежать этой проблемы в будущем.

(Пожалуйста, не стесняйтесь редактировать / комментировать / расширять этот ответ.)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...