我正在尝试让Google的OAuth通过Python的API客户端工作。
https://developers.google.com/api-client-library/python/start/installation
我已经使用easy_setup来安装它,并且apiclient包与我的Python客户端位于同一目录中。然而,当我运行我的客户端时,我会得到
from apiclient.discovery import build
from apiclient.errors import HttpError
ImportError: No module named errors
看起来它在apiclient目录中找不到errors.py类,但它显然在那里。
我的客户中包含了以下软件包:
from apiclient.discovery import build
from apiclient.http import MediaFileUpload
import httplib2
import mimetypes
from oauth2client.client import OAuth2WebServerFlow
from oauth2client.file import Storage as FileStorage
import oauth2client.tools
有办法绕过这个吗?
谢谢。
这听起来像是一个路径问题。
从操作系统的命令行启动python
二进制文件:
user@/usr/bin python
你应该看到这样的东西:
Python 2.7.6(默认,2014年9月9日15:04:36(
darwin 上的GCC 4.2.1兼容Apple LLVM 6.0(clang-600.0.39(
键入"帮助"、"版权"、"信用"或"许可证"以获取详细信息。
下一步导入sys,然后打印sys.path:
import sys
sys.path
sys.path将显示python当前知道的查找库的所有位置。确认api客户端存在于其中一个路径中,并且该路径上的权限是正确的。
分享上述步骤的输出截图将有助于进一步诊断您的问题。
这是一个非常古老的问题,但我刚刚找到了如何获得HttpError类,所以我想我应该包括我是如何做到的。
from apiclient import discovery, http
def execute_query(api_query):
try:
results = api_query.execute()
except http.HttpError:
return None