我正在使用https://github.com/karthikram/rDroprDrop
提供的包,经过一些调整(因为所有功能都不像你一直期望的那样工作)我得到了它最终以我想要的方式工作,但它仍然需要授权验证以允许使用该应用程序,一旦你每次获得令牌,因为我认为令牌会随着时间的推移而过期......(如果不是这种情况并且我可以在我的令牌中进行硬编码,请告诉我,这也是一个很好的解决方案......)
基本上,我想要一种近乎无缝的方式,从 R 中的命令行在一行代码中从我的保管箱文件夹下载 csv 文件,这样我就不需要在令牌请求后单击允许按钮。
这可能吗?
这是我用来包装保管箱 csv 下载的代码。
db.csv.download <- function(dropbox.path, ...){
cKey <- getOption('DropboxKey')
cSecret <- getOption('DropboxSecret')
reqURL <- "https://api.dropbox.com/1/oauth/request_token"
authURL <- "https://www.dropbox.com/1/oauth/authorize"
accessURL <- "https://api.dropbox.com/1/oauth/access_token/"
require(devtools)
install_github("ROAuth", "ropensci")
install_github("rDrop", "karthikram")
require(rDrop)
dropbox_oa <- oauth(cKey, cSecret, reqURL, authURL, accessURL, obj = new("DropboxCredentials"))
cred <- handshake(dropbox_oa, post = TRUE)
raw.data <- dropbox_get(cred,dropbox.path)
data <- read.csv(textConnection(raw.data), ...)
data
}
哦,如果不是很明显,我已将我的保管箱密钥和秘密放在我的 .Rprofile 文件中,这就是 getOption 部分所指的内容。
提前感谢您提供的任何帮助。(对于奖励积分......如果有人知道如何摆脱所有加载消息,即使安装会很棒......)