Un alt extractor
În exercițiul anterior, am construit o funcție capabilă să extragă conținutul text din anteturile H2.
Aici vom încerca ceva diferit: vrem să extragem toate linkurile existente pe o anumită pagină. Pentru aceasta, va trebui să apelăm două funcții httr: html_nodes(), cu argumentul css setat la "a" (a este eticheta HTML pentru linkuri), și html_attr(), care extrage un anumit atribut dintr-un nod — în cazul nostru, atributul va fi "href", adică adresa linkului.
purrr și rvest au fost deja încărcate. Vectorul urls se află în continuare în spațiul tău de lucru.
Acest exercițiu face parte din cursul
Programare funcțională intermediară cu purrr
Instrucțiuni pentru exercițiu
Prefixează
html_nodes()cu argumentulcsssetat la"a".Creează funcția
href(), care va fi o versiune prefixată a luihtml_attr().Compune o nouă combinație din
href(),get_a()șiread_html().Aplică această nouă funcție pe vectorul
urlsfolosindmap().
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# Create a partial version of html_nodes(), with the css param set to "a"
get_a <- ___(html_nodes, ___)
# Create href(), a partial version of html_attr()
href <- ___(___, name = "href")
# Combine href(), get_a(), and read_html()
get_links <- ___(___, ___, ___)
# Map get_links() to the urls list
res <- ___(urls, ___) %>%
set_names(urls)
# See the result
res