MulaiMulai sekarang secara gratis

Ekstrak node berdasarkan jumlah anaknya

Seperti ditunjukkan dalam video, fungsi XPATH count() dapat digunakan di dalam predikat untuk mempersempit seleksi ke node yang cocok dengan jumlah anak tertentu. Ini sangat membantu jika pengikis Anda bergantung pada beberapa node yang memiliki jumlah anak minimum.

Berikut adalah cuplikan dari sebuah halaman (tanpa kelas atau ID…) yang mungkin Anda scrap:

...
<div>
  <h1>Tomorrow</h1>
</div>
<div>
  <h2>Berlin</h2>
  <p>Temperature: 20°C</p>
  <p>Humidity: 50%</p>
</div>
<div>
  <h2>London</h2>
  <p>Temperature: 15°C</p>
</div>
<div>
  <h2>Zurich</h2>
  <p>Temperature: 22°C</p>
  <p>Humidity: 60%</p>
</div>
...

Anda hanya tertarik pada div yang memiliki tepat satu header h2 dan setidaknya dua paragraf, karena aplikasi Anda tidak dapat menangani prakiraan cuaca yang tidak lengkap.

HTML di atas tersedia untuk Anda melalui forecast_html.

Latihan ini adalah bagian dari kursus

Web Scraping di R

Lihat Kursus

Petunjuk latihan

  • Pilih div yang diinginkan dengan selektor XPATH yang sesuai, dengan memanfaatkan fungsi count().

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

# Select only divs with one header and at least two paragraphs
forecast_html %>%
	html_elements(xpath = '___')
Edit dan Jalankan Kode