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>Instructions de l’exercice
Créez une version de
GET()qui renverraNULLen 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)