使用Google的Python App Engine的Flask骨架,如何使用Pip安装其他库?

时间:2015-06-27 19:40:12

标签: python google-app-engine flask pip

要安装依赖项,appengine-python-flask-skeleton docs建议运行此命令:

pip install -r requirements.txt -t lib

这很简单。

现在说我要添加Requests package

理想情况下,我只需将其添加到requirements.txt文件中:

# This requirements file lists all third-party dependencies for this project.
#
# Run 'pip install -r requirements.txt -t lib/' to install these dependencies
# in `lib/` subdirectory.
#
# Note: The `lib` directory is added to `sys.path` by `appengine_config.py`.
Flask==0.10
requests

然后重新运行命令:

pip install -r requirements.txt -t lib

但是,对于点数备注的this Github issue,pip对于Google推荐的-T选项并非幂等。将重新添加现有的烧瓶包,这将导致运行devapp时出现以下错误

ImportError: cannot import name exceptions

我如何才能最好地解决这个问题?

2 个答案:

答案 0 :(得分:1)

如上所述,更新点数为许多人解决了这个问题,但是如果使用virtualenv是一个选项,那么我觉得你可以解决所有这些问题。符号链接ch[i]/path/to/virtualenv's/sitepackages/,并始终保持最新的lib/文件。这种方式没有重复包,并且不必手动安装依赖项。另请参阅https://stackoverflow.com/a/30447848/2295256

答案 1 :(得分:0)

升级到最新版本的pip解决了我的问题(该问题已经关闭):

pip install -U pip

否则,如该线程所述,您可以随时清除lib目录并从头开始重新安装。一条警告提示:如果您手动将其他软件包添加到lib中未跟踪的requirements.txt目录中,则会丢失这些软件包并且必须手动重新安装。