Un extracteur de contenu
Dans les exercices précédents, vous avez vérifié que tous les éléments du vecteur d’URL fourni renvoient un code d’état 200. Maintenant que vous savez qu’elles sont accessibles, allons plus loin dans le web scraping en extrayant du contenu.
Pour cela, nous utiliserons des fonctions du package rvest, que nous préremplirons avec partial(). Les fonctions que nous écrirons dans cet exercice extrairont tous les nœuds HTML H2 d’une page — sur une page web, ces nœuds H2 correspondent aux titres de niveau 2. Une fois ces titres extraits, la fonction html_text() sera utilisée pour récupérer le texte à partir du HTML brut.
purrr et rvest ont été chargés pour vous, et le vecteur urls est disponible dans votre espace de travail.
Cet exercice fait partie du cours
<cours>Programmation fonctionnelle intermédiaire avec purrr</cours>Instructions de l’exercice
Commencez par préremplir
html_nodes()aveccss = "h2".Combinez cette fonction nouvellement créée entre
read_htmlethtml_textpour créer un extracteur de texte pour les en-têtesH2.Exécutez cette fonction sur le vecteur
urlset nommez le résultat.Affichez le résultat pour voir à quoi il ressemble.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# Prefill html_nodes() with the css param set to h2
get_h2 <- ___(html_nodes, ___)
# Combine the html_text, get_h2 and read_html functions
get_content <- ___(___, ___, ___)
# Map get_content to the urls list
res <- ___(urls, ___) %>%
set_names(___)
# Print the results to the console
___