library(rvest)
sp.list = "https://www.quebec.ca/agriculture-environnement-et-ressources-naturelles/faune/gestion-faune-habitats-fauniques/especes-fauniques-menacees-vulnerables/liste"
# Get website
wp.list = read_html(species.list)
# Extract name of sections
headers = wp.list %>% html_elements("h3") %>% html_text2() %>% .[1:24]
# Get tables
tab = read_html(sp.list) %>% html_table(header = TRUE)
# Name tables
names(tab) = headers
# Combine tables
tab.gr = dplyr::bind_rows(tab, .id = "group")
这使得:
tab.gr
# A tibble: 180 × 3
group Espèce `Nom latin`
<chr> <chr> <chr>
1 Mollusques Anodonte du gaspareau Utterbackiana implicata
2 Mollusques Obovarie olivâtre Obovaria olivaria
3 Insectes Bourdon à tache rousse Bombus affinis
4 Insectes Coccinelle à neuf points Coccinella novemnotata
我能够获得h2
个部分标题,但我无法将它们与每h3
个部分相关联
get.section = wp.list %>% html_nodes('.frame, .frame-default, .frame-type-textmedia, .frame-layout-0')
pas.dans.cette.page = !grepl(pattern = "Dans cette", x = get.section)
subset.listes = get.section[pas.dans.cette.page]
sections.tables = subset.listes[grep(pattern = "Liste des esp", x = subset.listes)]
sections.tables %>% html_elements("h2") %>% html_text2()
[1] "Liste des espèces menacées"
[2] "Liste des espèces vulnérables"
[3] "Liste des espèces susceptibles d’être désignées comme menacées ou vulnérables"
那么,我如何才能获得标题(例如,"Liste des espèces menacées")及其团体(例如,"软体动物")与他们的桌子?