从API下载CSV文件

时间:2017-04-20 19:20:06

标签: r readr

我试图将一个csv文件导入R.我已经创建了以下代码,用于创建csv文件的链接。当我在浏览器中使用生成的链接时,代码可以正常工作。但是当我运行代码时,它无法正常工作。希望有人可以提供帮助。

library(httr)
library(tidyverse)
library(stringr)
library(jsonlite)


metadata.dst <- function(tableid){
link.metadata <- "http://api.statbank.dk/v1/tableinfo/"
GET(str_c(link.metadata,tableid)) %>%
  content("text") %>%
  fromJSON()     
}

download.link.dst <- function(tableid){
 table <- tolower(tableid)
 base.link_start <- "http://api.statbank.dk/v1/data/"
 base.link_end <- "/CSV?delimiter=Semicolon"
 link_start <- str_c(base.link_start, table,base.link_end)

variables <- metadata.dst(tableid)$variables$id
 link_end <- str_c("&",variables) %>%
 str_c("=*") %>%
 str_c(collapse = "")

download.link <- str_c(link_start, link_end) %>%
 str_replace("Å","%C3%85") %>%
 str_replace("å", "%C3%A5") %>%
 str_replace("Ø", "%C3%98") %>%
 str_replace("ø", "%C3%B8") %>%
 str_replace("Æ", "%C3%86") %>%
 str_replace("æ", "%C3%A6")
 download.link

}

read_csv2(download.link.dst("FOLK1B"))

0 个答案:

没有答案