IniziaInizia gratis

Estrarre i codici di stato con GET()

Per questo ultimo esercizio, passeremo dalla funzione read_lines() alla funzione GET() di httr.

Per prima cosa creeremo una versione di GET() con possibly(), per verificare se alcuni degli URL che hai ottenuto restituiscono un errore. Se riesci ad accedere all’URL, verrà restituito un oggetto di connessione. Al suo interno troverai un elemento "status_code".

Non concentrarti sui risultati: ricorda solo che se una GET() restituisce un errore, è perché l’URL non è disponibile. Il numero del codice di stato che stiamo restituendo può sembrare un po’ gergo del web, ma ne parleremo più a fondo nel prossimo capitolo. Per ora ricordati soltanto che 200 significa che è andato tutto come previsto.

Il vettore urls è disponibile nel tuo workspace; purrr e httr sono già stati caricati per te.

Questo esercizio fa parte del corso

Programmazione funzionale intermedia con purrr

Visualizza il corso

Istruzioni dell'esercizio

  • Crea una versione di GET() che restituisca NULL in caso di errore.

  • Imposta i nomi dei risultati.

  • Rimuovi i NULL.

  • Estrai lo "status_code" da ciascun elemento.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

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)
Modifica ed esegui il codice