Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用httr从私有GitHub repo加载csv文件_R - Fatal编程技术网

使用httr从私有GitHub repo加载csv文件

使用httr从私有GitHub repo加载csv文件,r,R,我想从私有GitHub repo下载一个csv文件,并将其加载到当前环境中。我不想简单地读取\u csv(“raw\u git\u url”),因为脚本将是公共的,复制/粘贴raw\u git\u url将给我留下filename.csv?token=AHh\u HT3Aetc…并且我不希望我的令牌号是公共的 相反,我得到了一个GitHub身份验证令牌,并将其作为.Renviron文件放入我的工作目录中 例如,我可以这样将文件写入磁盘/工作目录: library(httr) url <-

我想从私有GitHub repo下载一个csv文件,并将其加载到当前环境中。我不想简单地
读取\u csv(“raw\u git\u url”)
,因为脚本将是公共的,复制/粘贴raw\u git\u url将给我留下
filename.csv?token=AHh\u HT3Aetc…
并且我不希望我的令牌号是公共的

相反,我得到了一个GitHub身份验证令牌,并将其作为
.Renviron
文件放入我的工作目录中

例如,我可以这样将文件写入磁盘/工作目录:

library(httr)
url <- "https://raw.githubusercontent.com/username/privatereponame/master/dataname.csv"
GET(url, write_disk("mynew.csv", overwrite=TRUE))
x=GET(url, authenticate(Sys.getenv("GITHUB_PAT1"), ""))
enc<-stringi::stri_enc_detect(content(x, "raw"))
content(x, "text", encoding = enc[[1]]$Encoding[1])

…然后编写一些脚本将文本转换为csv。。。。但是这感觉太冗长了。

有时候你必须问一个问题才能找到答案:

x=GET(url, authenticate(Sys.getenv("GITHUB_PAT1"), ""))
content(x, type="text/csv")
使用
content()
中的
type
参数设置MIME类型