Отсутствует модуль Windows в приложении Flask, работающем в Ubuntu Droplet

3

Я пытаюсь запустить приложение Flask в Ubuntu Droplet, но когда я пытаюсь запустить приложение с python app.py, я получаю следующую трассировку:

* Running on http://0.0.0.0:4000/ (Press CTRL+C to quit)
 * Restarting with stat
Traceback (most recent call last):
  File "app.py", line 49, in <module>
    app.run('0.0.0.0', port=4000, debug=True)
  File "/usr/local/lib/python2.7/dist-packages/flask/app.py", line 772, in run
    run_simple(host, port, self, **options)
  File "/usr/local/lib/python2.7/dist-packages/werkzeug/serving.py", line 622, in run_simple
    reloader_type)
  File "/usr/local/lib/python2.7/dist-packages/werkzeug/_reloader.py", line 269, in run_with_reloader
    reloader.run()
  File "/usr/local/lib/python2.7/dist-packages/werkzeug/_reloader.py", line 159, in run
    for filename in chain(_iter_module_files(), self.extra_files):
  File "/usr/local/lib/python2.7/dist-packages/werkzeug/_reloader.py", line 70, in _iter_module_files
    for package_path in getattr(module, '__path__', ()):
  File "/usr/lib/python2.7/dist-packages/six.py", line 116, in __getattr__
    _module = self._resolve()
  File "/usr/lib/python2.7/dist-packages/six.py", line 105, in _resolve
    return _import_module(self.mod)
  File "/usr/lib/python2.7/dist-packages/six.py", line 76, in _import_module
    __import__(name)
ImportError: No module named _winreg

Я не могу установить пакет с помощью pip или apt-get, так как я уверен, что это модуль для Windows. Есть ли способ обойти это?

Теги:
flask
digital-ocean
winreg

1 ответ

4
Лучший ответ

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

Установка watchdog может решить мою проблему:

pip install watchdog

И теперь, вместо того, чтобы видеть "* Перезапустить с помощью stat", я вижу "Перезапуск с помощью inotify reloader", и все работает нормально.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню