在具有 setup.py 要求的 GAE 中导入第 3 方库

Import 3rd party libraries in GAE with setup.py requirements

如何安装具有其他依赖项的第三方库?我正在尝试将 Urban Airship 导入我基于 python 的 Google App Engine 项目。我明白,基本前提是我做了类似

的事情
import sys
sys.path.insert(0, 'libs')
from urbanairship import *

所以我从他们的 GitHub 帐户克隆了 urbanairship。另外,urbanairship actual 文件夹位于另一个文件夹下,该文件夹最初是 python-library。通过多次尝试使这项工作正常进行,我尝试了像

这样的导入
from python-library.urbanairship import *
from python-library.urbanairship import core
from urbanairship import *
from urbanairship import core

然后尝试将 python-library 重命名为 pythonlibrary

from pythonlibrary.urbanairship import *
from pythonlibrary.urbanairship import core

一个更核心的问题是urbanairship有一个setup过程会安装其他依赖库。所以我 运行:

sudo python setup.py install

在我的本地机器上安装了请求依赖项,这在 GAE 中不可用,所以我从 Github 克隆了请求包,它也有自己的 setup.py 文件来安装更多依赖项。事情仍然没有奏效,我想 - 这不是正确的方法,这就是为什么我没有向 SO 寻求帮助。这样做的正确方法是什么?

您只需将包复制到您的根目录(与 app.yaml 一起),这会将它们放入您的应用程序的全局命名空间中,从而使它们在您的代码中可用,就像它们已安装一样在系统中。

据我所知,在你的情况下,你只需要复制 urbanairshiprequests folder/package,然后像往常一样导入它们。如果出现其他要求,只需冲洗并重复即可。

为了清楚起见,您在 github 存储库中看到的其余代码包括文档、测试和其他使设置正常工作的文件,但您只对文件夹 ( urbanairship, requests) 本身。