Django CMS "No module named html5lib"
I have a basic Django CMS site installed with all the default and recommended modules however I recieve and error saying...
Updated
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
html5lib has been installed via easy_install html5lib
and if I import html5lib
in a default Python shell it imports fine.
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
>>>
This is set up on a clean install of Scientific Linux with Python 2.6.6.
I am using Django 1.3.1.
My INSTALLED_APPS is as shown.
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.p开发者_开发知识库lugins.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',
)
My question (if it isn't obvious by now ;) ) is why is there a problem importing html5lib and how can I fix it.
Update 1
@matt-williamson Thanks, here is the html5lib file info
>>> html5lib.__file__
'/usr/lib/python2.6/site-packages/html5lib-0.90-py2.6.egg/html5lib/__init__.pyc'
I have updated the Django error to give more of the error page. As you can see the Python Path includes /usr/lib/python2.6/site-packages/html5lib-0.90-py2.6.egg which suggests to me it should be able to find it.
Either you have two versions of python installed or you need to set your python path.
Get the path the module is installed to
>>> import html5lib
>>> html5lib.__file__
'/Library/Python/2.7/site-packages/html5lib-0.90-py2.7.egg/html5lib/init.pyc'
^D
Set the PYTHONPATH
environment variabled.
export PYTHONPATH="$PYTHONPATH:/Library/Python/2.7/site-packages/"
python manage.py runserver
精彩评论