BeautifulSoup установлен, но не распознается при запуске dev_appserver - PullRequest
1 голос
/ 21 августа 2011

Обновление

By adding BeautifulSoup.py to my app source, this error was gone :)  

Спасибо @Ned Deily, это заняло много времени, но было плодотворно

Игнорировать отсюда
У меня только один экземпляр Python 2.5, установленный с BeautifulSoup, все еще не повезло !, что я делаю не так, пожалуйста, помогите

bash-3.2$ ls -ltr /Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/site-packages
total 1096
-rw-r--r--   1 Harit  admin   66866 May 28  2006 BeautifulSoup.py
-rw-r--r--   1 Harit  admin   26413 May 28  2006 BeautifulSoupTests.py
-rw-rwxr--   1 root   admin     119 Sep 18  2006 README
drwxr-xr-x  19 Harit  admin     646 Aug 20 23:58 django
-rw-r--r--   1 Harit  admin    1228 Aug 20 23:58 Django-1.3-py2.5.egg-info
-rw-r--r--   1 Harit  admin  333390 Aug 21 00:17 setuptools-0.6c11-py2.5.egg
-rw-r--r--   1 Harit  admin      30 Aug 21 00:17 setuptools.pth
-rw-r--r--   1 Harit  admin     215 Aug 21 00:22 easy-install.pth
-rw-r--r--   1 Harit  admin   33196 Aug 21 00:23 BeautifulSoupTests.pyc
-rw-r--r--   1 Harit  admin   67193 Aug 21 00:23 BeautifulSoup.pyc
-rw-r--r--   1 Harit  admin     970 Aug 21 00:23 BeautifulSoup-3.0.0-py2.5.egg-info
bash-3.2$ 

Игнорировать отсюда

Я удалил все версии python из macport и system и заново установил версию python 2.7

bash-3.2$ python
Python 2.7.2 (v2.7.2:8527427914a2, Jun 11 2011, 15:22:34) 
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import django
>>> from BeautifulSoup import BeautifulSoup
>>>   

, и все пути также выглядят хорошо

bash-3.2$ echo $PATH
/Library/Frameworks/Python.framework/Versions/2.7/bin:/opt/local/bin:/opt/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/git/bin:/usr/X11/bin:/opt/local/bin  

и имеет только одну версию python, в которой установлены Django и BeautifulSoup

bash-3.2$ cd /Library/Frameworks/Python.framework/Versions/Current/
Headers/   Mac/       Python     Resources/ bin/       include/   lib/       share/     
bash-3.2$ cd /Library/Frameworks/Python.framework/Versions/Current/lib/python2.7/lib
lib-dynload/ lib-tk/      lib2to3/     
bash-3.2$ cd /Library/Frameworks/Python.framework/Versions/Current/lib/python2.7/
Display all 641 possibilities? (y or n)
bash-3.2$ ls /Library/Frameworks/Python.framework/Versions/Current/lib/python2.7/site-packages/
BeautifulSoup-3.2.0-py2.7.egg-info  BeautifulSoupTests.pyc          easy-install.pth
BeautifulSoup.py            Django-1.3-py2.7.egg-info       setuptools-0.6c11-py2.7.egg
BeautifulSoup.pyc           README                  setuptools.pth
BeautifulSoupTests.py           django
bash-3.2$ 

, но при запуске dev_appserver.py project он говорит, что не может импортировать модуль BeautifulSoup

Пожалуйста, помогите

Спасибо

Игнорировать снизу
У меня установлен BeautifulSoup, и я могу сделатьследующее:

bash-3.2$ python
Python 2.6.7 (r267:88850, Jul 27 2011, 11:54:59) 
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> from BeautifulSoup import BeautifulSoup
>>>   

но когда я запускаю свое приложение djando и пытаюсь запустить код, он не может сказать, что

Error was: No module named BeautifulSoup  

Кажется, я используювсе правильно

bash-3.2$ which python
/opt/local/bin/python

lrwxr-xr-x  1 root  admin        9 Aug 16 13:55 python -> python2.6  

bash-3.2$ cd /Library/Python/2.6/site-packages/
BeautifulSoup-3.0.0-py2.6.egg-info                  ipython-0.11-py2.6.egg/
BeautifulSoup.py                                    mercurial/
BeautifulSoup.pyc                                   mercurial-1.8.3_20110502-py2.6.egg-info/
BeautifulSoupTests.py                               nose-1.1.2-py2.6.egg/
BeautifulSoupTests.pyc                              paramiko-1.7.6-py2.6.egg
Django-1.3-py2.6.egg-info                           pip-1.0.2-py2.6.egg/
MySQL_python-1.2.3-py2.6-macosx-10.6-universal.egg  pycrypto-2.3-py2.6-macosx-10.6-universal.egg
README                                              pysqlite-2.6.3-py2.6.egg-info
django/                                             pysqlite2/
easy-install.pth                                    setuptools-0.6c11-py2.6.egg
easy_install                                        setuptools.pth
easy_install-2.6                                    xlrd/
hgext/                                              xlrd-0.6.1-py2.6.egg-info

Как мне решить эту проблему
Спасибо

1 Ответ

4 голосов
/ 21 августа 2011

Вы, очевидно, установили второй, более новый экземпляр Python 2.6. Скорее всего, ваше приложение Django установлено и запускается из другого экземпляра Python 2.6, возможно, из системы Python 2.6 (/usr/bin/python или /usr/bin/python2.6). Введите which python, чтобы увидеть путь к Python, в котором есть BeautifulSoup (возможно, /usr/local/bin/python?). Вам нужно будет объединить вещи; либо установите BeautifulSoup в Python с Django, либо установите Django в Python с BeautifulSoup.

ОБНОВЛЕНИЕ: Поскольку вы, очевидно, используете Google App Engine dev_server, есть вероятность, что он работает под Python 2.5, а не Python 2.6; На данный момент GAE официально поддерживается только с 2.5, насколько я знаю. Примечание. Apple выпускает как Python 2.6, так и 2.5 с OS X 10.6. Поэтому вам, вероятно, нужно установить Beautiful Soup в Python 2.5. Попробуйте:

easy_install-2.5 -U -v beautifulsoup==3.2

На данный момент вам необходимо указать версию, поскольку в настоящее время существует более новая бета-версия Beautiful Soup 4, которая, по-видимому, несовместима с Python 2.5.

ОБНОВЛЕНИЕ: У вас также установлено более одной версии Python 2.5. Указанный путь предназначен для стороннего Python, а не для Python 2.5, поставляемого Apple. Итак, , последнее предложение - попытаться использовать easy_install-2.5 для Python 2.5, поставляемого Apple:

/usr/bin/easy_install-2.5 -U -v beautifulsoup==3.2
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...