2

我正在尝试从多个请求构建一个 JSON 文件,但第二个请求似乎已经出错了。我正在使用 Meetup API,由于结果总数为 600+,因此我需要更多的调用,而不仅仅是返回 200 个结果的调用。

我认为它确实将结果存储在文件中,尽管在从这些结果创建数据框时会出错:

Error in feed_push_parser(readBin(con, raw(), n), reset = TRUE) : 
  parse error: trailing garbage
          ,"lat":52.36}}  {"results":[{"utc_offset":36000
                     (right here) ------^

将数据放入数据框中的函数

json_to_df <- function(){
  df <- jsonlite::fromJSON('Meetup/meetupdata.json', flatten=TRUE)
}

我如何收集数据:

store_open_events <- function(){
  events_url = sprintf('%s/2/open_events?&key=%s&sign=true&photo-host=public&lat=x.xx&country=x&city=Amsterdam&lon=x.xx&time=-24m,&status=past&page=200', API_BASE, API_KEY)
  k = GET(events_url)
  events = content(k, "text")
  file_location = 'Meetup/meetupdata.json'
  write(events, file_location, append=TRUE)
  for(i in 0:2){
    events_url = jsonlite::fromJSON(content(k, "text"), flatten=TRUE)
    k = GET(events_url$meta$`next`)
    events = content(k, "text")
    file_location = 'Meetup/meetupdata.json'
    write(events, file_location, append=TRUE)
  }
}

我想知道这是否是要走的路,像这样附加 JSON 文件,以及为什么将这些数据放入数据框中时会发生错误?任何帮助表示赞赏!

4

0 回答 0