Seleziona direttamente da un elemento padre con la funzione XPATH text()
In questo esercizio userai la stessa tabella. Questa volta estrarrai le informazioni sulla funzione tra parentesi in una loro colonna dedicata, quindi dovrai ottenere un data frame con non due, ma tre colonne: attori, ruoli e funzioni.
Per farlo, dovrai applicare la specifica funzione XPATH introdotta nel video al posto di html_table(), che spesso non funziona nella pratica se l'elemento HTML table non è ben strutturato, come in questo caso.
Per riferimento, ecco di nuovo un estratto dell'HTML della tabella:
<table>
<tr>
<th>Actor</th>
<th>Role</th>
</tr>
<tr>
<td class = 'actor'>Jayden Carpenter</td>
<td class = 'role'><em>Mickey Mouse</em> (Voice)</td>
</tr>
...
</table>
In questo esercizio, la variabile roles_html contiene il documento HTML con il suo elemento table.
Questo esercizio fa parte del corso
Web scraping in R
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
# Extract the actors in the cells having class "actor"
actors <- roles_html %>%
html_elements(xpath = '//table//td[@class = "actor"]') %>%
html_text()
actors
# Extract the roles in the cells having class "role"
roles <- roles_html %>%
html_elements(xpath = '//table//td[@class = "___"]/___') %>%
___()
roles