【问题标题】:Is there a way to mass edit user permissions / interact with hundreds of Google Sheets via Python?有没有办法通过 Python 批量编辑用户权限/与数百个 Google 表格交互?
【发布时间】:2021-09-20 17:08:17
【问题描述】:

我有大约 600 个谷歌表格,它们都非常相似,我需要从一个特定的列中获取值。我已经在 Google Developer 控制台中对应用进行了身份验证,因此我可以访问一张工作表。但是,要这样做,我必须从工作表本身内部访问服务帐户。该服务帐户无权访问其他 599 张工作表,我宁愿不通过手动授予它访问每张工作表的权限。

有没有人有更好的方法来做到这一点,或者通过验证所有工作表的服务帐户,或者通过 python 访问数百个谷歌工作表的更好方法,这并不意味着我必须获得该帐户的许可?如果有帮助,我的 Google 帐户可以访问所有工作表。

有一个谷歌,但无法弄清楚如何做到这一点!任何帮助表示赞赏。

【问题讨论】:

    标签: python pandas google-sheets google-sheets-api


    【解决方案1】:

    您可以在 Drive API 中使用 Permissions: create 根据您的首选角色为特定文件创建新权限。

    通过 API 资源管理器的示例请求:

    FileId:要在其中添加新权限的工作表文件 ID

    {
      "role": "writer",
      "type": "user",
      "emailAddress": "serviceaccount@email.com"
    }
    

    有关要使用的Roles 的更多详细说明,请参阅此处。

    由于您的 Google 帐户可以访问所有工作表,因此您只需获取所有工作表文件 id 的列表并循环每个 id 即可使用您的 Google 帐户为您的服务帐户创建新权限。


    其他参考:

    Drive API Python Quickstart

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-12-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-10-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多