#python-2.7 #openshift
#python-2.7 #openshift
Вопрос:
Желаемое поведение
Как установить tldextract (PyPI и GitHub) в приложение на Python 2.7 в OpenShift.
Что я пробовал
Я попытался добавить в setup.py
например:
install_requires=['bottle','pymongo','requests','beautifulsoup4','lxml','Beaker','pycrypto','pillow','tldextract']
А затем импортировать в приложение с помощью:
import tldextract
Я также попробовал следовать этому сообщению и запустил следующее из командной строки:
virtualenv $OPENSHIFT_DATA_DIR/virtualenv --distribute
source $OPENSHIFT_DATA_DIR/virtualenv/bin/activate
pip install tldextract
deactivate
но я получаю ту же ошибку, что и показано ниже.
Это произошло, несмотря на показ предыдущего шага Successfully installed tldextract
.
Фактическое поведение
Наличие:
import tldextract
в приложении возникает ошибка 500.
Запуск tail с:
rhc tail -f app-root/logs/python.log [appname]
Ошибка заключается в:
ImportError: No module named tldextract
Ответ №1:
Решение
Я не знаю, как и почему, но я подключился по ssh к shell и запустил следующее, ImportError
исчезло, и происходит желаемое поведение:
source ~/python/virtenv/bin/activate
pip install --log $OPENSHIFT_DATA_DIR/inst.log https://github.com/john-kurkowski/tldextract/archive/master.zip
Для справки, setup.py
все еще содержит следующее, но я не уверен, способствует ли это какой-либо функциональности:
install_requires=['bottle','pymongo','requests','beautifulsoup4','lxml','Beaker','pycrypto','pillow','tldextract']
Редактировать
Для справки, я также смог выполнить вышеуказанные шаги, чтобы установить Pillow.