【问题标题】:ImportError: No module named werkzeug.test [Installation on Windows]ImportError:没有名为 werkzeug.test 的模块 [在 Windows 上安装]
【发布时间】:2017-06-07 01:57:00
【问题描述】:

CKAN 版本

CKan 2.5.2

git clone https://github.com/ckan/ckan.git
git checkout tags/ckan-2.5.2

我关注https://github.com/ckan/ckan/wiki/How-to-Install-CKAN-2.5.2-on-Windows-7 从开始到“创建数据库表”这一步 (ckan2.5.2env) D:\src\ckan>paster db init -c development.ini

发生错误:

  File "d:\users\administrator.user1-pc\envs\ckan2.5.2env\lib\site-packages\pkg_
resources\__init__.py", line 2303, in load
    return self.resolve()
  File "d:\users\administrator.user1-pc\envs\ckan2.5.2env\lib\site-packages\pkg_
resources\__init__.py", line 2309, in resolve
    module = __import__(self.module_name, fromlist=['__name__'], level=0)
  File "D:\src\ckan\ckan\config\middleware\__init__.py", line 7, in <module>
    from werkzeug.test import create_environ, run_wsgi_app

ImportError: 没有名为 werkzeug.test 的模块

运行后>easy_install werkzeug 错误改为:

ImportError: 没有名为 flask 的模块

运行后>easy_install flask 错误改为:

ImportError: 没有模块名称配置 这无法解决。

参考 ..\ckan\config\middleware__init__.py 上的第 6 行 它导入以下内容

import webob from werkzeug.test import create_environ, run_wsgi_app
from ckan.config.environment import load_environment from
ckan.config.middleware.flask_app import make_flask_stack from
ckan.config.middleware.pylons_app import make_pylons_stack

尝试更正requiremnets.txt

File"D:\ckan\config\middleware\flask_app.py", line 6, in <module>
ImportError: cannot import name config
(ckan2.5.2env) D:\src\ckan>pip install -r requirements.txt
Collecting bleach==1.4.2 (from -r requirements.txt (line 10))  Using cached bleach-1.4.2-py2.py3-none-any.whl
Installing collected packages: bleach  Found existing installation: bleach 2.0.0    Uninstalling bleach-2.0.0:      
Successfully uninstalled bleach-2.0.0Successfully installed bleach-1.4.2(ckan2.5.2env) 
D:\src\ckan>paster db init -c development.ini
File"d:\ckan2.5.2env\lib\site-packages\bleach\__init__.py", line 8, in <module>    from html5lib.sanitizer import HTMLSanitizer
ImportError: No module named sanitizer
(ckan2.5.2env) D:\src\ckan>pip install --upgrade bleach
Successfully uninstalled bleach-1.4.2Successfully installed bleach-2.0.0
(ckan2.5.2env) D:\src\ckan>paster db init -c development.ini
File"D:\ckan\config\middleware\flask_app.py", line 6, in <module>
ImportError: cannot import name config

尝试从ckan2.5.2换成2.5.4

init.py 似乎已修复。 因此,显示了进一步的 Locale 问题

(ckan2.5.4env) d:\src\ckan>paster --plugin=ckan 用户列表-c development.ini

import i18n
File "d:\ckan2.5.4env\lib\site-packages\ckan-2.6.1-py2.7.egg\ckan\lib\i18n.py",

第 46 行,在 从 babel.core 导入(LOCALE_ALIASES, ImportError: 无法导入名称 get_locale_identifier

i18n.py,第 46 行, 从 babel 导入语言环境 from babel.core import (LOCALE_ALIASES, get_locale_identifier, UnknownLocaleError)

【问题讨论】:

  • 您没有提及您遵循的其余安装步骤。例如pip install -r requirements.txt
  • 我跟着github.com/ckan/ckan/wiki/…从开始到步骤"创建数据库表"(ckan) C:\src\ckan>paster db init -c development.ini 然后收到ImportError跨度>

标签: python-2.7 windows-7 ckan


【解决方案1】:

ImportError 表示您没有成功完成此步骤pip install -r requirements.txt。尝试启用您的 virtualenv 并再次执行该步骤,并确保它成功完成。

还请确保您使用的是最新的补丁版本。 2.5.2 已被 2.5.4 取代,您应该始终使用最新版本之一。这可能会解决 sanitizer/bleach/html5 版本问题。

【讨论】:

  • 好像有点进步了。显示了另一个错误“没有名为 sanitizer 的模块”。
  • 对于消毒剂错误,Google 发现:github.com/stephenmcd/cartridge/issues/304 对于“配置”错误,Google 发现:lists.okfn.org/pipermail/ckan-dev/2016-September/010295.html
  • 顺便说一句,您现在应该使用 CKAN 2.5.4,而不是 2.5.2 来获取补丁(请参阅您的 git checkout)。这些可能有助于解决依赖关系 - 在某些时候可能已经在这些补丁中修复了漂白剂和 html5 的混乱。或者干脆试试这个:pip install html5lib==0.9999999
  • 尝试从 ckan2.5.2 更改为 2.5.4 init.py 似乎已修复。 i18n.py 第 46 行 from babel import Locale from babel.core import (LOCALE_ALIASES, get_locale_identifier, UnknownLocaleError) 已抛出。想知道目的地有多远。
  • 我怀疑这是 Windows 的问题。我帮不上忙。
猜你喜欢
  • 2015-01-21
  • 1970-01-01
  • 2016-12-07
  • 1970-01-01
  • 2015-12-22
  • 1970-01-01
  • 2015-10-04
  • 2019-06-24
  • 2016-05-21
相关资源
最近更新 更多