EmpezarEmpieza gratis

Extraer códigos de estado con GET()

En este último ejercicio, pasaremos de la función read_lines() a la función GET() de httr.

Primero crearemos una versión de GET() con possibly() para comprobar si algunas de las URL que tienes devuelven un error. Si puedes acceder a la URL, se devolverá un objeto de conexión. Dentro, encontrarás un elemento "status_code".

No te centres en los resultados: solo recuerda que si una llamada a GET() devuelve un error, es porque la URL no está disponible. El número del código de estado puede sonar un poco a jerga web, pero lo veremos con más detalle en el siguiente capítulo. Por ahora, quédate con que 200 significa que todo ha ido como se esperaba.

El vector urls está disponible en tu espacio de trabajo, y purrr y httr ya están cargados por ti.

Este ejercicio forma parte del curso

Programación funcional intermedia con purrr

Ver curso

Instrucciones del ejercicio

  • Crea una versión de GET() que devuelva NULL en caso de error.

  • Asigna nombres a los resultados.

  • Elimina los NULL.

  • Extrae el "status_code" de cada elemento.

ejercicio interactivo práctico

Prueba este ejercicio completando este código de ejemplo.

url_tester <- function(url_list){
  url_list %>%
    # Map a version of GET() that would otherwise return NULL 
    map( ___(GET, ___) ) %>%
    # Set the names of the result
    ___( url_list ) %>%
    # Remove the NULL
    ___() %>%
    # Extract all the "status_code" elements
    map(___)
}

# Try this function on the urls object
___(urls)
Editar y ejecutar código