2

我目前正在跑步

library(googlesheets4)
sheets_auth()

dat=read_sheet("https://docs.google.com/spreadsheets/d/1R9XuH9Wej-p6HdkFGV2IsHuCmA9w0s7M3-jzE3S-Qrs/edit#gid=950673024", sheet="Summary", range=cell_rows(1:777))

并获得以下输出。

Suitable tokens found in the cache, associated with these emails:
  * dcallow@umd.edu
  * ddcc2442@gmail.com
The first will be used.
Using an auto-discovered, cached token.
To suppress this message, modify your code or options to clearly consent to the use of a cached token.
See gargle's "Non-interactive auth" vignette for more details:
https://gargle.r-lib.org/articles/non-interactive-auth.html
The googlesheets4 package is using a cached token for dcallow@umd.edu.
> 
> dat=read_sheet("https://docs.google.com/spreadsheets/d/1R9XuH9Wej-p6HdkFGV2IsHuCmA9w0s7M3-jzE3S-Qrs/edit#gid=950673024", sheet="Summary", range=cell_rows(1:777))
Error: Client error: (403) PERMISSION_DENIED
  * Client does not have sufficient permission. This can happen because the OAuth token does not have the right scopes, the client doesn't have permission, or the API has not been enabled for the client project.
  * The caller does not have permission

我不确定问题是否是它迫使我使用第一封电子邮件?是否可以更改为第二个令牌?但我也很困惑为什么不再要求我进入我的谷歌帐户来验证东西?

任何想法为什么会发生这种情况?我是 API 新手。

4

3 回答 3

1

这可能是因为当您使用 登录时gs_auth,您必须选择了错误的权限。要重新分配您的权限,首先使用 deauth gs_deauth(),然后使用,然后gs_auth()在下一个选项中,输入0重新Selection: 初始化您对 google 帐户的访问权限。确保在分配权限时在浏览器窗口中选中复选框以读取、写入电子表格。

如果您无法做到,请发表评论。

继续编码!

于 2021-08-17T11:51:55.637 回答
1

你可以试试这个

图书馆(googlesheets4)

gs4_auth_configure(api_key = "A.......bMGUA")

您应该在凭据中创建一个 api 密钥 https://console.cloud.google.com/apis/credentials

我等它可以帮助你

于 2020-12-28T23:03:31.963 回答
-1

您还可以在 googlesheet 页面上的“共享”按钮下“将 GoogleSheet 链接设置为“互联网上任何拥有此链接的人都可以查看”。然后:

googlesheets4::gs4_deauth()
CellROSConc <- read_sheet("https://docs.google.com/spreadsheets/d/1bxTIKTNfv-n3Y-JMJCOlt14Ec3e4tSdBQZg-HiuypOY/edit?usp=sharing")
于 2021-10-21T19:38:58.760 回答