无法使用 R 从 API 中提取数据
Not able to extract data from API using R
我在 R 中有下面提到的数据框:
DF
ID Code
PO-1 123
PO-3 345
PO-4 222
我想在 api 中传递 ID
从 JSON 获得特定的响应。
我有 api,例如“https://test.com/path/code-info?ID=PO-1”,代码为 header(x892edrsre34434f)。
JSON格式:
{"test":1,"FormDetails":{"CusName":"Alex",
"City":"NYC","limit":null,"pincode":null,
"refID":"123456",
"channelID":"YUT009"}}
我想从每个 ID
和 rbind
的 API 输出中提取 CusName
和 refID
以及我的 DF
获得以下输出。
ID Code CusName refID
PO-1 123 Alex YUT009
PO-3 345 Carla YUT098
PO-4 222 Tim YUT124
我试过:
Get_Df<-GET("https://***.com",
path = "path/code-info?Id=",
query = "PO-1",
add_headers(token, API key))
首先,您的 get 查询似乎不正确,试试
httr::GET(
"https://test.com",
path = "path/code-info",
query = list(Id = "PO-1"),
add_headers(token, API key)
)
或
httr::GET(
"https://test.com",
path = paste0("path/code-info?Id=", "PO-1"),
add_headers(token, API key)
)
然后使用 jsonlite
或不同的 httr::content()
类型来读取您的 JSON
test_list <- jsonlite::fromJSON(test)
test_list$FormDetails$CusName
test_list$FormDetails$refID
然后您可以首先循环您的数据框以获取所有响应,一旦您拥有它们,例如一个列表,将所有相关信息提取到一个向量中。我会在第一个循环中使用 lapply
,在提取中使用 purrr
。为了进一步帮助您,我需要有关数据的更多信息。
我在 R 中有下面提到的数据框:
DF
ID Code
PO-1 123
PO-3 345
PO-4 222
我想在 api 中传递 ID
从 JSON 获得特定的响应。
我有 api,例如“https://test.com/path/code-info?ID=PO-1”,代码为 header(x892edrsre34434f)。
JSON格式:
{"test":1,"FormDetails":{"CusName":"Alex",
"City":"NYC","limit":null,"pincode":null,
"refID":"123456",
"channelID":"YUT009"}}
我想从每个 ID
和 rbind
的 API 输出中提取 CusName
和 refID
以及我的 DF
获得以下输出。
ID Code CusName refID
PO-1 123 Alex YUT009
PO-3 345 Carla YUT098
PO-4 222 Tim YUT124
我试过:
Get_Df<-GET("https://***.com",
path = "path/code-info?Id=",
query = "PO-1",
add_headers(token, API key))
首先,您的 get 查询似乎不正确,试试
httr::GET(
"https://test.com",
path = "path/code-info",
query = list(Id = "PO-1"),
add_headers(token, API key)
)
或
httr::GET(
"https://test.com",
path = paste0("path/code-info?Id=", "PO-1"),
add_headers(token, API key)
)
然后使用 jsonlite
或不同的 httr::content()
类型来读取您的 JSON
test_list <- jsonlite::fromJSON(test)
test_list$FormDetails$CusName
test_list$FormDetails$refID
然后您可以首先循环您的数据框以获取所有响应,一旦您拥有它们,例如一个列表,将所有相关信息提取到一个向量中。我会在第一个循环中使用 lapply
,在提取中使用 purrr
。为了进一步帮助您,我需要有关数据的更多信息。