Django CMS "找不到模块 html5lib
我在一个基本的Django CMS网站上安装了所有默认和推荐的模块,但我收到了一个错误信息,内容是……
更新
Request Method: GET
Request URL: http://teamdjango.lnukapps.co.uk/admin/cms/page/21/
Django Version: 1.3.1
Exception Type: ImportError
Exception Value:
No module named html5lib
Exception Location: /usr/lib/python2.6/site-packages/django_cms-2.2-py2.6.egg/cms/utils/html.py in <module>, line 2
Python Executable: /usr/bin/python
Python Version: 2.6.6
Python Path:
['/usr/lib/python2.6/site-packages/setuptools-0.6c11-py2.6.egg',
'/usr/lib/python2.6/site-packages/html5lib-0.90-py2.6.egg',
'/usr/lib/python2.6/site-packages/django_classy_tags-0.3.4.1-py2.6.egg',
'/usr/lib/python2.6/site-packages/django_mptt-0.4.2-py2.6.egg',
'/usr/lib/python2.6/site-packages/django_sekizai-0.4.2-py2.6.egg',
'/usr/lib/python2.6/site-packages/django_cms-2.2-py2.6.egg',
'/usr/lib/python2.6/site-packages/django_filer-0.9a1-py2.6.egg',
'/usr/lib/python2.6/site-packages/django_polymorphic-0.2-py2.6.egg',
'/usr/lib/python2.6/site-packages/easy_thumbnails-1.0_alpha_18-py2.6.egg',
'/usr/lib/python2.6/site-packages/cmsplugin_filer-0.8.0-py2.6.egg',
'/usr/lib64/python26.zip',
'/usr/lib64/python2.6',
'/usr/lib64/python2.6/plat-linux2',
'/usr/lib64/python2.6/lib-tk',
'/usr/lib64/python2.6/lib-old',
'/usr/lib64/python2.6/lib-dynload',
'/usr/lib64/python2.6/site-packages',
'/usr/lib64/python2.6/site-packages/PIL',
'/usr/lib/python2.6/site-packages',
'/usr/lib/python2.6/site-packages']
Server time: Fri, 14 Oct 2011 14:05:59 +0100
我通过 easy_install html5lib
安装了html5lib,并且如果我在默认的Python命令行中 import html5lib
,它可以正常导入。
Python 2.6.6 (r266:84292, May 20 2011, 16:42:11)
[GCC 4.4.5 20110214 (Red Hat 4.4.5-6)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import html5lib
>>>
这个环境是在全新安装的Scientific Linux上,使用的是Python 2.6.6。
我正在使用Django 1.3.1。
我的INSTALLED_APPS设置如下。
INSTALLED_APPS = (
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'django.contrib.messages',
'django.contrib.staticfiles',
# Uncomment the next line to enable the admin:
'django.contrib.admin',
# Uncomment the next line to enable admin documentation:
'django.contrib.admindocs',
'cms',
'mptt',
'menus',
'south',
'sekizai',
'cms.plugins.flash',
'cms.plugins.googlemap',
'cms.plugins.link',
'cms.plugins.snippet',
'cms.plugins.text',
'cms.plugins.twitter',
'filer',
'cmsplugin_filer_file',
'cmsplugin_filer_folder',
'cmsplugin_filer_image',
'cmsplugin_filer_teaser',
'cmsplugin_filer_video',
# 'reversion',
)
我的问题(如果现在还不明显的话;)是为什么导入html5lib会出现问题,以及我该如何解决它。
更新 1
@matt-williamson
谢谢,这里是html5lib的文件信息。
>>> html5lib.__file__
'/usr/lib/python2.6/site-packages/html5lib-0.90-py2.6.egg/html5lib/__init__.pyc'
我已经更新了Django的错误信息,以显示更多的错误页面。如你所见,Python的路径中包含 /usr/lib/python2.6/site-packages/html5lib-0.90-py2.6.egg,这让我觉得它应该能够找到这个库。
1 个回答
0
你可能安装了两个版本的Python,或者需要设置一下你的Python路径。
获取模块安装的路径
>>> import html5lib
>>> html5lib.__file__
'/Library/Python/2.7/site-packages/html5lib-0.90-py2.7.egg/html5lib/init.pyc'
^D
设置一下PYTHONPATH
这个环境变量。
export PYTHONPATH="$PYTHONPATH:/Library/Python/2.7/site-packages/"
python manage.py runserver