Get the existing yahooids

extant_yahoo <- read.csv(
    file.path('..', 'data-raw', 'yahooids.csv'),
    stringsAsFactors = FALSE
  )

extant_yahooids <- extant_yahoo$yahooid %>% sort()

Loop over and read

verbose <- TRUE
players <- list()

for (i in extant_yahooids) {
  if (verbose) cat(paste0(i,'...'))
  tryCatch({
    m <- do.call(yahoo, list('id' = i))
    players[[paste0('p', i)]] <- m
    if (verbose) cat(paste(m$name), m$dob, '\n')
  }, error = function(e) {
    cat("failed on", i, '|', conditionMessage(e), "\n")
  })
}

#bind rows
sprintf('read %s new players from %s.com!', length(players), id_type)
new_ids <- dplyr::bind_rows(players)


almartin82/mlbids documentation built on May 10, 2019, 9:54 a.m.