Estou geralmente familiarizado com rvest
. Sei a diferença entre html_elements()
e html_element()
. Mas não consigo entender esse problema:
Suponha que temos dados como os que estão nesta página da web . Os dados estão em um formato hierárquico e cada cabeçalho tem um número diferente de subtítulos.
Quando tento raspar, obtenho 177 cabeçalhos. Mas, os subtítulos são, na verdade, 270. Quero extrair os dados em um formato organizado. Mas com tamanhos de vetores diferentes, não consigo combiná-los facilmente em um tibble.
Aqui está meu código com alguns comentários sobre os resultados:
page <- read_html("https://postdocs.stanford.edu/about/department-postdoc-admins")
person_departments <- page %>%
html_elements(".item-list") %>%
html_element("h3") %>%
html_text2()
# The above code returns
person_names <- page %>%
html_elements(".item-list li") %>%
html_element("h4") %>%
html_text2()
# This one returns 270 names (some departments have more than 1 admin)
# Using the above codes, I can't get a nice table with two columns, one for the name and one for the person's department.