Použij predikáty k výběru uzlů podle jejich potomků
Tady je skoro stejný HTML jako předtím. Navíc má třetí div potomka p s třídou third.
<html>
<body>
<div id = 'first'>
<h1 class = 'big'>Berlin Weather Station</h1>
<p class = 'first'>Temperature: 20°C</p>
<p class = 'second'>Humidity: 45%</p>
</div>
<div id = 'second'>...</div>
<div id = 'third'>
<p class = 'first'>Sunshine: 5hrs</p>
<p class = 'second'>Precipitation: 0mm</p>
<p class = 'third'>Snowfall: 0mm</p>
</div>
</body>
</html>
S XPathem jde udělat něco, co s CSS není možné: vybírat elementy podle vlastností jejich potomků. K tomu slouží predikáty. Cílem je vybrat jen ty div elementy, které obsahují p element s třídou third. Potřebuješ tedy vybrat jen takový div, který splňuje určitý predikát — má daného potomka (nemusí být přímý). Postupuješ krok za krokem.
Výše uvedený HTML je opět k dispozici jako weather_html.
Toto cvičení je součástí kurzu
Web Scraping v R
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# Select all divs
weather_html %>%
___(xpath = ___)