我正在努力让Google的OAuth通过Python的API客户端工作。
https://developers.google.com/api-client-library/python/start/installation
我已经使用easy_setup来安装它,并且在我的Python客户端所在的目录中有apiclient包。但是,当我运行我的客户端时,我得到了
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
有解决方法吗?
感谢。
答案 0 :(得分:0)
这听起来像路径问题。
从操作系统的命令行中,启动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客户端存在于其中一个路径中,并且该路径上的权限是正确的。
分享上述步骤的输出屏幕截图有助于进一步诊断您的问题。
答案 1 :(得分:0)
这是一个非常老的问题,但我只是想出了如何获取HttpError类,因此我想我应该包括它的实现方法。
from apiclient import discovery, http
def execute_query(api_query):
try:
results = api_query.execute()
except http.HttpError:
return None