Петля нумерации застряла при x> 99 - PullRequest
0 голосов
/ 27 апреля 2019

У меня очень большой опыт работы с R, но утилизация для меня нова. Я удаляю некоторые данные из API, и мой код работает нормально, пока я извлекаю страницы с 0 по 98. Всякий раз, когда мой цикл достигает 99, я получаю ошибку Error: Internal Server Error (HTTP 500)..

Пытался найти ответ, но я хорошо владею только R и C # и не понимаю Python или другое.


keywords = c('ABC OR DEF')

parameters <- list(
  'q'       = keywords,
  num_days = 1,
  language = 'en',
  num_results = 100,
  page = 0,
  'api_key' = '123456'
)

response <- httr::GET(get_url, query = parameters)

# latest_page_number <- get_last_page(parsed)

httr::stop_for_status(response)

content <- httr::content(response, type = 'text', encoding = 'utf-8')

parsed  <- jsonlite::fromJSON(content, simplifyVector = FALSE, simplifyDataFrame = TRUE)

num_pages = round(parsed[["total_results"]]/100)
print(num_pages)

result = parsed$results
for(x in 1:(num_pages))
{
  print(x)
  parameters <- list(
    'q' = keywords,
    page = x,
    num_days = 7,
    language = 'en',
    num_results = 100,
    'api_key' = '123456'
  )
  response <- httr::GET(get_url, query = parameters)

  httr::stop_for_status(response)

  content <- httr::content(response, type = 'text', encoding = 'utf-8')
  # content <- httr::content(response)

  parsed  <- jsonlite::fromJSON(content, simplifyVector = FALSE, simplifyDataFrame = TRUE)

  Sys.sleep(0.2)

  result = rbind(result,parsed$results[,colnames(result)])

}
...