【问题标题】:Trying to write from R to Google Sheets, can't get credentials尝试从 R 写入 Google 表格,无法获得凭据
【发布时间】:2021-12-03 10:23:27
【问题描述】:

在过去的 6 个多月里,我使用 googlesheets4 包从 R 到 Google 表格进行阅读和写作,没有任何问题。昨天,突然之间,我开始收到“无法获取 Google 凭据”错误,我似乎找不到解决方案。

我一直使用 gs4_auth('email address'),没有其他详细信息。

我阅读了有关漱口水的故障排除建议,我还在这里找到了另一个带有建议的线程,但不幸的是,没有任何东西对我有用。这是我将漱口详细程度更改为“调试”时得到的结果:

尝试token_fetch() 尝试credentials_service_account() token_fetch() 捕获的错误: 参数“txt”必须是 JSON 字符串、URL 或文件。 尝试credentials_external_account() aws.ec2metadata 未安装;无法检测是否在 EC2 实例上运行 尝试credentials_app_default() 尝试credentials_gce() 尝试credentials_byo_oauth() token_fetch() 捕获的错误: 继承(令牌,“Token2.0”)不是 TRUE 尝试credentials_user_oauth2() Gargle2.0初始化 尝试从以下位置访问内部漱口水数据:googlesheets4 添加“userinfo.email”范围 token_fetch() 捕获的错误: ReadItem: 未知类型 50,可能是更高版本的 R 写的

根据此信息,我不知道要更改什么。

我还了解到,如果 gargle 保存身份验证数据的缓存已满,则可能会发生这种突然的错误。但我没有找到缓存。我试图运行这个:

需要(漱口) gargle_oauth_sitrep()

我得到: FUN(X[[i]], ...) 中的错误: ReadItem:未知类型 50,可能是更高版本的 R 编写的。

我的 R 版本现在是 4.1.2,但之前是 4.1.0。我更新了它,希望它能解决一些问题,但它没有。我还重新安装了一些软件包:curl、openssl、gargle。还是不行。

我现在没有主意了。有人可以帮忙吗?

编辑(已解决):我找到了 gargle 存储身份验证数据的缓存并删除了文件。之后,我再次进行了初始身份验证过程,它现在可以工作了。我会把这个问题留给遇到同样问题的任何人。如果漱口冗长没有其他建议,则可以尝试此解决方案。

【问题讨论】:

    标签: r googlesheets4


    【解决方案1】:

    我通过执行
    rappdirs::user_cache_dir("gargle") 发现我的漱口缓存飞了,在 R 控制台中它给了我这个答案:

    图书馆/缓存/漱口

    我删除了该目录中的所有文件,瞧,下次我使用 read_sheet() 时,我必须登录我的 gmail 帐户,单击一个框以允许 googlesheets4 读写我的 google 表格,现在它可以工作了。

    【讨论】:

    • 您的答案可以通过额外的支持信息得到改进。请edit 添加更多详细信息,例如引用或文档,以便其他人可以确认您的答案是正确的。你可以找到更多关于如何写好答案的信息in the help center
    猜你喜欢
    • 1970-01-01
    • 2019-05-07
    • 2021-03-02
    • 2021-06-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-02-07
    • 1970-01-01
    相关资源
    最近更新 更多