所需行为
在OpenShift上的Python 2.7应用程序中安装tldextract(PyPI和GitHub)。
我尝试过的事情
我尝试添加到setup.py
,例如:
install_requires=['bottle','pymongo','requests','beautifulsoup4','lxml','Beaker','pycrypto','pillow','tldextract']
然后在应用程序中导入:
import tldextract
我也尝试了this post并从shell运行了以下内容:
virtualenv $OPENSHIFT_DATA_DIR/virtualenv --distribute
source $OPENSHIFT_DATA_DIR/virtualenv/bin/activate
pip install tldextract
deactivate
但我得到的错误如下所示。
尽管上一步显示Successfully installed tldextract
。
实际行为
存在:
import tldextract
应用程序中的导致500错误。
尾随:
rhc tail -f app-root/logs/python.log [appname]
错误是:
ImportError: No module named tldextract
答案 0 :(得分:0)
<强>解决方案强>
我不知道如何或为什么,但是我已经进入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。