Bouw een functie
Je probeert je tools voor webscraping verder te perfectioneren, zodat je zo efficiënt mogelijk kunt werken als data-analist bij een webbureau.
In deze oefening maak je de extractor-functie van de vorige oefening iets strenger: als de code die door de status-extractor wordt teruggegeven niet tussen 200 en 203 ligt, geeft de functie een ontbrekende waarde (NA) terug. In het andere geval wordt de statuscode teruggegeven.
purrr en httr zijn alvast voor je geladen.
Deze oefening maakt deel uit van de cursus
Gevorderd functioneel programmeren met purrr
Oefeninstructies
Negate de
%in%-operator, die wordt gebruikt om te testen of het element links voorkomt in het element rechts.Stel een
extract_status()-functie samen, die een combinatie is vanGET()enstatus_code().Maak de gegeven functie af: de statuscode van de
urlmoet worden opgehaald en toegewezen aan een variabelecode. Als dezecodeniet in200:203zit, moet een ontbrekende waarde worden geretourneerd. Anders retourneer je de statuscode.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# 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
}