在Python Appengine上使用Httplib2

11

当我运行尝试使用Foursquare进行OAuth的应用程序时,为什么会出现此错误?

import httplib2
ImportError: No module named httplib2

我已经按照这里(http://code.google.com/p/httplib2/wiki/Install)的指示通过下载并在命令行上运行`$ python setup.py install`来安装了httplib2。

请问我还有遗漏什么吗?谢谢。

4个回答

7

您需要将库包含在项目中,以便App Engine运行时知道您正在导入什么。

这里获取:

您可以通过将代码放在应用程序目录中来包含其他纯Python库。如果您在应用程序目录中创建一个符号链接到模块的目录,appcfg.py将跟随该链接并将模块包含在应用程序中。


我从未使用过符号链接;当用户发布应用程序时会发生什么?符号链接的库也会被打包吗? - systempuntoout
2
@systempuntoout:是的,appcfg.py无论应用程序目录中的模块是否为符号链接,它都不会在上传时出现问题;它可以轻松上传它们。 - Wooble
@Wooble 我正在使用Google App Engine Launcher,我需要使用终端来创建指向httplib2库的符号链接吗? - keith
@keith:是的,ln -s可以创建符号链接。我不确定在Finder中创建的别名是否与dev_appserver的工作方式相同。我猜它们可能会,尽管我现在没有Mac来测试它。 - Wooble

3

我已经创建了一个简单的示例,演示如何在使用Google App Engine时执行此操作。 (https://github.com/muanis/foursquare-oauth-bootstrap) 基本上,您需要Google oAuth2客户端(http://code.google.com/p/google-api-python-client/)和httplib2(http://code.google.com/p/httplib2/)。


2

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接