如何使用googlesheets4等R包为Google Sheets版本命名
谷歌工作表命名版本实现方案
- 你要的命名版本功能不需要调用Google Script,
googledrive包本身已经提供了对应函数,你之前没找到是因为版本管理属于Drive API的能力范畴,没有放在Sheets API对应的googlesheets4包里:
直接调用googledrive::drive_create_version()即可实现命名版本创建,参考实现代码如下:library(googlesheets4) library(googledrive) # 完成谷歌账号授权,根据你的部署场景选择交互式/非交互式认证方式 gs4_auth() drive_auth() # 替换为你的目标电子表格ID target_sheet_id <- "替换为你的表格ID" # 此处插入你原有更新新冠疫情数据的业务逻辑,完成工作表内容更新 # ......你的原有更新代码...... # 生成当日日期拼接的版本名称 current_version_name <- paste0("疫情数据更新_", Sys.Date()) # 为当前表格创建命名版本 drive_create_version(file = as_id(target_sheet_id), name = current_version_name) - 如果你有更复杂的版本处理逻辑,确实可以实现R调用Google Apps Script:你可以提前编写好对应的Apps Script脚本,部署为可通过API触发的web应用,在R侧通过
httr包发送HTTP请求即可触发脚本执行,该方案适合googledrive原生函数无法满足定制需求的场景。 - 每日自动运行的调度可以根据你的运行环境选择工具:本地运行可使用
cronR(macOS/Linux)或taskscheduleR(Windows)包实现定时调度,服务器部署直接使用系统自带的定时任务功能即可。
内容的提问来源于stack exchange,提问作者mbkm
相关产品推荐
相关产品推荐

