Başka bir çıkarıcı
Önceki egzersizde, H2 başlıklardan metin içeriğini çıkarabilen bir fonksiyon yazmıştık.
Burada farklı bir şey deneyeceğiz: belirli bir sayfada bulunan tüm bağlantıları (linkleri) çıkarmak istiyoruz. Bunu yapmak için iki httr fonksiyonunu çağırmamız gerekecek: html_nodes() — burada css argümanını "a" olarak ayarlayacağız (a, bağlantılar için HTML etiketidir) — ve bir düğümden belirli bir özniteliği alan html_attr() — bizim durumumuzda bu öznitelik, bağlantı adresi olan "href" olacak.
purrr ve rvest senin için yüklendi. Çalışma alanında urls vektörünü de bulabilirsin.
Bu egzersiz, kursun bir parçasıdır
purrr ile Orta Düzey Fonksiyonel Programlama
Egzersiz talimatları
cssargümanı"a"olacak şekildehtml_nodes()fonksiyonunu önceden doldur (prefill).html_attr()fonksiyonunun önceden doldurulmuş bir sürümü olacakhref()fonksiyonunu oluştur.href(),get_a()veread_html()fonksiyonlarını birleştirerek yeni bir bileşim oluştur.Bu yeni fonksiyonu
urlsvektörü üzerinde map et.
Uygulamalı etkileşimli egzersiz
Bu egzersizi bu örnek kodu tamamlayarak deneyin.
# Create a partial version of html_nodes(), with the css param set to "a"
get_a <- ___(html_nodes, ___)
# Create href(), a partial version of html_attr()
href <- ___(___, name = "href")
# Combine href(), get_a(), and read_html()
get_links <- ___(___, ___, ___)
# Map get_links() to the urls list
res <- ___(urls, ___) %>%
set_names(urls)
# See the result
res