从 R 中的 API 数据将八位字节流解析为数据帧

Parsing octet-stream into data frame from API data in R

我正在尝试解析从 API 中检索的一些数据,但是当我使用 fromJSON():

时,我不断收到以下错误
Error: parse error: trailing garbage
                                      01/28/20|000010102|St. John's|OZ
                     (right here) ------^

无法运行的脚本:

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


url<-"https://urldefense.com/v3/__http://files.airnowtech.org/airnow/yesterday/daily_data_v2.dat__;!!J30X0ZrnC1oQtbA!Yh5wIss-mzbpMRXugALJoWEKLKcg1-7VmERQwcx2ESK0PZpM5NWNml5s9MVgwHr5LD1i5w$ "

my_raw_result<-httr::GET(url)
my_content<-httr::content(my_raw_result,as="text")
my_content_from_json<-jsonlite::fromJSON(my_content)

我检查了状态和它的 200,当我 运行 http_type(my_raw_result) 它说“application/octet-stream。这是我第一次尝试从 API 访问数据所以我不知道这意味着什么。我应该使用不同的函数来解析吗?我将不胜感激任何指导。

该数据源不是 JSON 格式。例如,前三行如下所示:

[1] "01/28/20|000010102|St. John's|OZONE-1HR|PPB|37|1|Newfoundland & Labrador DEC|-999|-999|47.652800|-52.816700|124000010102"         
[2] "01/28/20|000010102|St. John's|OZONE-8HR|PPB|35|8|Newfoundland & Labrador DEC|32|0|47.652800|-52.816700|124000010102"              
[3] "01/28/20|000010501|Grand Falls Windsor|OZONE-1HR|PPB|40|1|Newfoundland & Labrador DEC|-999|-999|49.019400|-55.802800|124000010501"

最好与原始来源核对格式的定义,但它看起来像是一种分隔格式,| 用于分隔列。如果这是真的,这是从 my_content 变量中读取它的一种方法:

my_content_from_delim <- my_content %>% textConnection %>% readLines %>% read.delim(text = ., sep = "|")