CommencerCommencez gratuitement

Extraire les codes de statut avec GET()

Pour ce dernier exercice, nous allons passer de la fonction read_lines() à la fonction GET() du package httr.

Nous allons d’abord créer une version de GET() avec possibly() afin de vérifier si certaines des URL que vous avez renvoient une erreur. Si l’URL est accessible, un objet de connexion sera renvoyé. Vous y trouverez un élément "status_code".

Ne vous focalisez pas sur les résultats : retenez simplement que si GET() renvoie une erreur, c’est que l’URL n’est pas disponible. Le numéro de code de statut peut sembler du jargon web, mais nous en parlerons plus en détail au chapitre suivant. Pour l’instant, souvenez-vous simplement que 200 signifie que tout s’est déroulé comme prévu.

Le vecteur urls est disponible dans votre espace de travail, et purrr ainsi que httr ont été chargés pour vous.

Cet exercice fait partie du cours

<cours>Programmation fonctionnelle intermédiaire avec purrr</cours>
Voir le cours

Instructions de l’exercice

  • Créez une version de GET() qui renverra NULL en cas d’erreur.

  • Définissez les noms des résultats.

  • Supprimez les NULL.

  • Extrayez le "status_code" de chaque élément.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

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)
Modifier et exécuter le code