开发者

Django CMS "No module named html5lib"

开发者 https://www.devze.com 2023-04-13 05:19 出处:网络
I have a basic Django CMS site installed with all the default and recommended modules however I recieve and error saying...

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
0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号