当前位置: 首页 > 面试题库 >

ImportError:无法导入名称SignedJwtAssertionCredentials

牛昱
2023-03-14
问题内容

我正在尝试使用以下代码通过Python客户端访问google应用以获取授权(显然已删除了私人信息):

import gflags
import httplib2

from apiclient.discovery import build
from oauth2client.file import Storage
from oauth2client.client import SignedJwtAssertionCredentials
from oauth2client.tools import run

f = open('privatekey.p12', 'rb')
key = f.read()
f.close()
credentials = SignedJwtAssertionCredentials(
    service_account_name='name@developer.gserviceaccount.com',
    private_key=key,
    scope = 'https://www.googleapis.com/auth/calendar')
http = httplib2.Http()
http = credentials.authorize(http)
service = build(serviceName='calendar', version='v3', http=http)

但是我收到此错误:

ImportError: cannot import name SignedJwtAssertionCredentials

我已经安装了Google v3 API Python客户端以及OAuth2;尽管这些模块并没有太多使用,但似乎没有任何其他问题。有人知道发生了什么吗?


问题答案:

似乎您尚未安装pyopenssl。通过安装easy_install pyopenssl

Libraries oauth2client.client
if HAS_OPENSSL:
  # PyOpenSSL is not a prerequisite for oauth2client, so if it is missing then
  # don't create the SignedJwtAssertionCredentials or the verify_id_token()
  # method.

  class SignedJwtAssertionCredentials(AssertionCredentials):
....


 类似资料:
  • 问题内容: 我有两个文件, app.py mod_login.py 而python返回此错误: 如果删除from app import app,代码将起作用,但是如何访问? 问题答案: 问题是你有一个循环导入:在app.py中 在mod_login.py中 这在Python中是不允许的。有关更多信息,请参见Python中的循环导入依赖项。简而言之,解决方案是 要么将所有内容收集到一个大文件中 使用

  • 问题内容: 我正在尝试运行以下简单代码 但我收到以下错误 我正在Windows 10下使用python 2.7。 我已经安装了,但是似乎无法解决问题 任何帮助表示赞赏。 问题答案: 如果查看引起错误的行,则会看到以下内容: 该行注释将依赖项声明为(对于 Intel Math Kernel Library )。这意味着您已经安装了by ,但是the是由预编译的存档安装的,其期望值为。 通过从此处的w

  • 问题内容: 我没有找到解决方案,有人可以帮忙吗? 问题答案: 1. 尝试更新 2. 尝试重新安装 以下代码段将打印到控制台什么?

  • 问题内容: 我正在尝试使用ttk模块为tkinter中的GUI应用程序为Windows创建可执行文件。我使用cx_freeze制作了一个exe,但是当我在控制台中运行该应用程序时,出现以下错误: 这是我的代码中的第14和15行: 问题答案: 看起来cx_freeze没有意识到它应该包含该模块,该模块有条件地由导入。您可以告诉它在命令行参数或关键字参数to中明确包含该模块。

  • 问题内容: 我无法使ffprobe软件包在Python 3.6中工作。我使用pip安装了它,但是当我输入时说 init.py文件仅包含一行。 包括“ C:\ Python \ Python36 \ lib \ site-packages”,这是ffprobe目录所在的位置。 安装和导入软件包在Python 2.7中都可以正常工作。但是我想在Python 3中使用它,即使这意味着对.py文件进行手动

  • 问题内容: 我将Jupyter笔记本从旧版本更新为最新的5.3.1。但是,当我尝试从anaconda启动笔记本电脑时,它引发了导入错误:我尝试删除并安装Jupyter软件包,但问题仍然存在。 问题答案: 您需要从终端手动更新jupyter_core和jupyter_client: