R-如何通过API URL循环包含在数据帧中的id列表?



我正在使用API从网站接收一些数据。此代码设置如下:

require(httr)
require(jsonlite)
url <- "https://api.WEBSITE.com/api/v1/ID"
response <- VERB("GET", url, add_headers('API_KEY'), content_type("application/octet-stream"), accept("application/json"))
Data = fromJSON(rawToChar(response$content)

输出是一个包含27列和一行对应ID的数据框。

我还有一个带有id列表的数据框架,可以在上面代码的url末尾单独插入(在那里它说"id"),以检索列表中每个单独名称的数据。与单独插入每个名称并检索数据不同,我想循环遍历数据帧并自动插入每个ID并生成一个数据帧作为输出,该数据帧包含每个ID的所有数据。

我如何在url中设置ID的循环,并在一个数据框中获得所有输出?

提前感谢!

require(httr)
require(jsonlite)
require(tidyverse)
get_data <- function(id) {

url <- paste0("https://api.WEBSITE.com/api/v1/", id)
response <- VERB("GET", url, add_headers('API_KEY'), content_type("application/octet-stream"), accept("application/json"))
Data = fromJSON(rawToChar(response$content)

return(Data)
}  
map_dfr(dataframe$IDs, get_data) # Replace the dataframe$IDs with the a vector of IDs or a colulm from a dataframe with IDs

最新更新