- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用可从 https://github.com/karthikram/rDrop 获得的 rDrop
包,经过一些调整(因为所有功能都不像您一直期望的那样正常工作)我终于按照我想要的方式工作了,但它仍然需要授权验证才能使用应用程序,一旦你每次都获得 token ,因为我认为 token 会随着时间的推移而过期......(如果不是这种情况并且我可以在我的 token 中进行硬编码请告诉我这也是一个很好的解决方案...... .)
基本上,我想要一种近乎无缝的方式,通过一行代码从 R 中的命令行从我的保管箱文件夹下载 csv 文件,这样我就不需要在 token 请求后单击允许按钮。
这可能吗?
这是我用来打包保管箱 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
}
哦,如果不是很明显的话,我已经将我的 Dropbox key 和密码放在我的 .Rprofile 文件中,这就是 getOption 部分所指的内容。
在此先感谢您提供的任何帮助。 (对于奖励积分......如果有人知道如何摆脱所有的加载消息,即使对于安装也会很棒......)
最佳答案
library(rDrop)
# my keys are in my .rprofile, otherwise specifiy inline
db_token <- dropbox_auth()
# Hit ok to authorize once through the browser and hit enter back at the R prompt.
save(db_token, file="my_dropbox_token.rdata")
Dropbox token 不会过期,可以随时从 Dropbox web panel 撤销.
供将来使用:
library(rDrop)
load('~/Desktop/my_dropbox_token.rdata')
df <- data.frame(x=1:10, y=rnorm(10))
> df
x y
1 1 -0.6135835
2 2 0.3624928
3 3 0.5138807
4 4 -0.2824156
5 5 0.9230591
6 6 0.6759700
7 7 -1.9744624
8 8 -1.2061920
9 9 0.9481213
10 10 -0.5997218
dropbox_save(db_token, list(df), file="foo", ext=".rda")
rm(df)
df2 <- db.read.csv(db_token, file='foo.rda')
> df2
x y
1 1 -0.6135835
2 2 0.3624928
3 3 0.5138807
4 4 -0.2824156
5 5 0.9230591
6 6 0.6759700
7 7 -1.9744624
8 8 -1.2061920
9 9 0.9481213
10 10 -0.5997218
如果您还有其他问题,请提交 issue .
关于rDrop 保管箱 api 非过期 token /无缝 token 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12402601/
我正在使用可从 https://github.com/karthikram/rDrop 获得的 rDrop 包,经过一些调整(因为所有功能都不像您一直期望的那样正常工作)我终于按照我想要的方式工作了,
我是一名优秀的程序员,十分优秀!