while(TRUE){
  cat = readline(prompt = "Enter any categories you want articles about : ");
  url <- str_replace("https://api.nytimes.com/svc/search/v2/articlesearch.json?q=userCategoryHere&api-key=3Ik85TypYHio0ioMKheP1aAKJglXHt5a", "userCategoryHere", cat)
  req <- request(url) 
  resp <- req |> req_perform()
      if (resp |> resp_status() == 200){
      articles_l <- resp |> resp_body_string()
      articles_l <- str_extract(articles_l, "docs.+meta")
      articles_l <- articles_l |> str_remove( "docs\":") |> str_remove(",\"meta")
      # Create a dataframe with each character as a separate row
      df <- fromJSON(articles_l)  |>
        unnest(cols = multimedia) |>
        unnest(cols = keywords, names_sep = "_") |>
        unnest(cols = c(byline, headline, legacy)) |>
        unnest(cols = person, names_sep = "_s")
      break
      }
}
## Enter any categories you want articles about :
print(df)
## # A tibble: 7,383 × 56
##    abstract web_url snippet lead_paragraph print_section print_page source  rank
##    <chr>    <chr>   <chr>   <chr>          <chr>         <chr>      <chr>  <int>
##  1 Russian… https:… Russia… Bodies were r… A             8          The N…     0
##  2 Russian… https:… Russia… Bodies were r… A             8          The N…     0
##  3 Russian… https:… Russia… Bodies were r… A             8          The N…     0
##  4 Russian… https:… Russia… Bodies were r… A             8          The N…     0
##  5 Russian… https:… Russia… Bodies were r… A             8          The N…     0
##  6 Russian… https:… Russia… Bodies were r… A             8          The N…     0
##  7 Russian… https:… Russia… Bodies were r… A             8          The N…     0
##  8 Russian… https:… Russia… Bodies were r… A             8          The N…     0
##  9 Russian… https:… Russia… Bodies were r… A             8          The N…     0
## 10 Russian… https:… Russia… Bodies were r… A             8          The N…     0
## # ℹ 7,373 more rows
## # ℹ 48 more variables: subtype <chr>, caption <lgl>, credit <lgl>, type <chr>,
## #   url <chr>, height <int>, width <int>, xlarge <chr>, xlargewidth <int>,
## #   xlargeheight <int>, thumbnail <chr>, thumbnailwidth <int>,
## #   thumbnailheight <int>, widewidth <int>, wideheight <int>, wide <chr>,
## #   subType <chr>, crop_name <chr>, main <chr>, kicker <chr>,
## #   content_kicker <lgl>, print_headline <chr>, name <lgl>, seo <lgl>, …