Bangun sebuah fungsi
Anda masih berupaya menyempurnakan alat untuk web scraping agar seefisien mungkin dalam pekerjaan Anda sebagai analis data di sebuah agensi web.
Pada latihan ini, Anda akan membuat fungsi ekstraktor dari latihan sebelumnya menjadi sedikit lebih ketat: jika kode yang dikembalikan oleh ekstraktor status tidak berada di antara 200 dan 203, fungsi akan mengembalikan nilai hilang (NA). Jika tidak, kode status akan dikembalikan.
purrr dan httr telah dimuat untuk Anda.
Latihan ini adalah bagian dari kursus
Pemrograman Fungsional Tingkat Menengah dengan purrr
Petunjuk latihan
Negasikan operator
%in%, yang digunakan untuk menguji apakah elemen di sebelah kiri berada di dalam elemen di sebelah kanan.Komposisikan fungsi
extract_status(), yang akan menjadi gabunganGET()danstatus_code().Lengkapi fungsi yang diberikan: kode status
urlharus diekstrak dan ditetapkan ke variabelcode. Lalu jikacodeini tidak berada dalam200:203, kembalikan nilai hilang. Jika tidak, kembalikan kode status tersebut.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# Negate the %in% function
`%not_in%` <- ___(`%in%`)
# Compose a status extractor
extract_status <- ___(___, ___)
# Complete the function definition
strict_code <- function(url) {
# Extract the status of the URL
code <- ___(___)
# If code is not in the acceptable range ...
if (code ___ 200:203) {
# then return NA
return(___)
}
code
}