【问题标题】:Python reading a public google spreadsheet with no share optionPython 读取没有共享选项的公共谷歌电子表格
【发布时间】:2020-04-09 19:18:42
【问题描述】:

我可以阅读对人们开放但没有share 选项的谷歌电子表格吗?有一个讨论here,但我需要获得授权才能点击share 选项。

即使通过 URL 复制到我自己的 Google 电子表格也可以达到目的。

更新:

我的想法是,一旦我创建了一个 Google API,我应该能够创建一个带有客户电子邮件的 .json 文件。在共享选项中,我应该提供 .json 文件的客户端电子邮件。你可能会看到:Accessing Google Spreadsheet Data using Python

这是我没有找到任何共享选项的电子表格页面:https://docs.google.com/spreadsheets/d/e/2PACX-1vSc_2y5N0I67wDU38DjDh35IZSIS30rQf7_NYZhtYYGU1jJYT6_kDx4YpF-qw0LSlGsBYP8pqM_a1Pd/pubhtml#

【问题讨论】:

  • 我必须为我糟糕的英语水平道歉。不幸的是,我无法理解a google spreadsheet which is open to people, but doesn't have a share option。可以问一下具体情况吗?
  • 这个想法是,一旦我创建了一个 Google API,我应该能够创建一个带有 client email 的 .json 文件。在share 选项中,我应该提供.json 文件的客户端电子邮件。你可能会看到:towardsdatascience.com/…
  • 感谢您的回复。从您回复的链接中,我认为您可能想使用服务帐户访问电子表格。但不幸的是,我无法理解你的目标。我为我糟糕的英语水平深表歉意。
  • 您的意思是看不到电子表格右上角的绿色Share 按钮?我无法重现这种行为,所有者确实可以禁止其他人与他人共享电子表格,但我认为Share 按钮无论如何都应该出现。您是否尝试过通过 Drive API 与 Permissions: insert 共享文件?你能做到吗?您能否分享此文件副本的 URL,不包含任何敏感信息?
  • 不完全是,好像在Drive API中,我需要填写很多信息。你能检查一下吗? docs.google.com/spreadsheets/d/e/… 这是电子表格页面,我没有找到任何 Share 选项。

标签: python google-sheets google-api


【解决方案1】:

问题:

将电子表格的内容发布到网络与公开电子表格不同。

您共享的 URL 指的是在 these steps 之后发布到网络上的电子表格内容。这个发布的网站与数据来源的原始文件不同,因此它没有大部分功能,例如Share 按钮(无论如何,拥有Share 按钮没有意义,因为这个 URL 已经是公开的了)。

解决办法:

如果您想使用服务帐户访问电子表格数据,则必须执行以下操作之一(如果您有权访问电子表格,则最好使用方法 1):

  1. 与服务帐户共享电子表格本身(而不是发布的内容),如您引用的链接中所述。

  2. 使用您的应用程序从提供的 URL 获取网站内容。

参考:

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-10-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-26
    • 1970-01-01
    • 1970-01-01
    • 2013-12-27
    相关资源
    最近更新 更多