How do I resolve the AttributeError: 'Resource' object has no attribute in Google API?
How do I resolve the AttributeError: 'Resource' object has no attribute in Google API?
对于完整的上下文,我是脚本编写方面的新手。我正在尝试使用 Google 的 API 从 Google 管理员处获取完整的用户列表,但我什至难以通过它的 build()
部分.无论我在 service
上标记什么,它都没有该属性,除了 close()
我的最终目标几乎是获得用户、用户别名和组名的完整列表,这样我就可以检查它们是否在 creating/assigning 之前已经存在。不幸的是,我卡在了这个障碍上。
API 我正在尝试使用:https://developers.google.com/admin-sdk/directory
代码:
#!/usr/local/bin/env python3
import json
import os
import googleapiclient.discovery
from google.oauth2 import service_account
SCOPES = ['https://www.googleapis.com/auth/admin.directory.user.readonly',
'https://www.googleapis.com/auth/admin.directory.user.alias.readonly',
'https://www.googleapis.com/auth/admin.directory.group.readonly']
SERVICE_ACCOUNT_FILE = os.get.environ('SERVICE_ACCOUNT_FILE')
credentials = service_account.Credentials.from_service_account_file(
SERVICE_ACCOUNT_FILE, scopes=SCOPES)
service = googleapiclient.discovery.build('admin', 'directory_v1', credentials=credentials)
如果我只是尝试用 service.execute()
执行它,我会一直 运行ning 进入这个错误:
Traceback (most recent call last):
File "test.py", line 17, in <module>
service.execute()
AttributeError: 'Resource' object has no attribute 'execute'
如果我 运行 它没有任何东西,就在 service = ...
行之后,它不会吐出错误,所以我假设服务帐户文件是正确的。
service
变量,由 build, corresponds to the class Resource 返回。
此 class 可用于与您在构建服务时指定的 API 进行交互。根据这些参数,service
将有特定的 API 方法供其使用,但 execute()
不是其中之一。
由于您正在为 Directory API 构建服务,因此这些将是与此 API 进行交互的相应方法:
例如,如果您想调用 Users: list 以列出您域中的所有用户,您可以执行以下操作:
service = googleapiclient.discovery.build('admin', 'directory_v1', credentials=getCreds())
response = service.users().list(domain="YOUR_DOMAIN").execute()
对于完整的上下文,我是脚本编写方面的新手。我正在尝试使用 Google 的 API 从 Google 管理员处获取完整的用户列表,但我什至难以通过它的 build()
部分.无论我在 service
上标记什么,它都没有该属性,除了 close()
我的最终目标几乎是获得用户、用户别名和组名的完整列表,这样我就可以检查它们是否在 creating/assigning 之前已经存在。不幸的是,我卡在了这个障碍上。
API 我正在尝试使用:https://developers.google.com/admin-sdk/directory
代码:
#!/usr/local/bin/env python3
import json
import os
import googleapiclient.discovery
from google.oauth2 import service_account
SCOPES = ['https://www.googleapis.com/auth/admin.directory.user.readonly',
'https://www.googleapis.com/auth/admin.directory.user.alias.readonly',
'https://www.googleapis.com/auth/admin.directory.group.readonly']
SERVICE_ACCOUNT_FILE = os.get.environ('SERVICE_ACCOUNT_FILE')
credentials = service_account.Credentials.from_service_account_file(
SERVICE_ACCOUNT_FILE, scopes=SCOPES)
service = googleapiclient.discovery.build('admin', 'directory_v1', credentials=credentials)
如果我只是尝试用 service.execute()
执行它,我会一直 运行ning 进入这个错误:
Traceback (most recent call last):
File "test.py", line 17, in <module>
service.execute()
AttributeError: 'Resource' object has no attribute 'execute'
如果我 运行 它没有任何东西,就在 service = ...
行之后,它不会吐出错误,所以我假设服务帐户文件是正确的。
service
变量,由 build, corresponds to the class Resource 返回。
此 class 可用于与您在构建服务时指定的 API 进行交互。根据这些参数,service
将有特定的 API 方法供其使用,但 execute()
不是其中之一。
由于您正在为 Directory API 构建服务,因此这些将是与此 API 进行交互的相应方法:
例如,如果您想调用 Users: list 以列出您域中的所有用户,您可以执行以下操作:
service = googleapiclient.discovery.build('admin', 'directory_v1', credentials=getCreds())
response = service.users().list(domain="YOUR_DOMAIN").execute()