【问题标题】:Google Search Console API - Domain Wide Delegation - Returning no resultsGoogle Search Console API - 域范围委派 - 不返回任何结果
【发布时间】:2016-06-06 11:49:39
【问题描述】:

我为我们的 Google 应用程序域设置(至少尝试过)一个域范围的委派,以便与 python 脚本集成。特别是,我目前正在尝试与 Search Console API 进行交互。

这是我所做的:

  1. 设置服务帐号
  2. 启用域范围的委派
  3. 已将 https://www.googleapis.com/auth/webmasters.readonly 添加到授权 API 客户端列表的 Google 管理控制台。
  4. 根据 Google 提供的脚本设置一个简单的脚本

这是我的test.py 脚本:

#!/usr/bin/python

from oauth2client.service_account import ServiceAccountCredentials
from httplib2 import Http
from apiclient.discovery import build


scopes = [
        'https://www.googleapis.com/auth/webmasters.readonly',
    ]

credentials = ServiceAccountCredentials.from_json_keyfile_name('/path/to/my/key.json', scopes)
delegated_credentials = credentials.create_delegated('me@mydomain.com')

http_auth = credentials.authorize(Http())

webmasters_service = build('webmasters', 'v3', http=http_auth)

site_list = webmasters_service.sites().list().execute()

print site_list

结果:

{}

无赖。

我知道这是不正确的,因为当我使用 API Explorer 并授权 me@mydomain.com 时,我会在 Search Console 中看到我的网站的完整列表。有些东西坏了,我不确定问题出在哪里。

对我在此过程中遗漏的步骤有什么想法吗?一切似乎都经过验证。我没有收到403

挠头。

【问题讨论】:

  • 谢谢 - 这是我发现的第一个示例,它为网站管理员使用服务帐户 json(我已经有一个)文件并为我工作。救了我几个小时我想说:)
  • @andrewm4894 太棒了。很高兴这对某人有所帮助。

标签: python api google-api google-search-console google-api-python-client


【解决方案1】:

所以我不能 100% 确定我做了什么,或者我是如何修复它的。

我正在使用管理控制台 API 客户端访问实用程序中的权限,是否有尾随 /。最后,我将范围从 https://www.googleapis.com/auth/webmasters.readonly 更改为 https://www.googleapis.com/auth/webmasters 并且成功了!

我还没有回去玩只读范围,部分原因是我确实希望我的程序具有写访问权限。我只是将 readonly 用于测试目的。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-04
    • 2013-12-06
    • 2019-08-15
    • 2018-04-11
    • 2015-04-21
    • 2011-05-29
    相关资源
    最近更新 更多