Extrakce stavových kódů pomocí GET()
V tomto posledním cvičení přejdeme od funkce read_lines() k funkci GET() z balíčku httr.
Nejdřív vytvoříme verzi GET() zabalenou do possibly(), abychom otestovali, jestli některé z URL nevracejí chybu. Pokud je URL dostupná, funkce vrátí objekt spojení obsahující prvek "status_code".
Nesoustřeď se teď na výsledky – jen si zapamatuj, že pokud GET() vrátí chybu, znamená to, že daná URL není dostupná. Stavový kód, který vracíme, může znít trochu jako webový žargon, ale podrobněji se mu budeme věnovat v další kapitole. Prozatím si stačí zapamatovat, že kód 200 znamená, že vše proběhlo v pořádku.
Vektor urls máš k dispozici ve svém pracovním prostředí, balíčky purrr a httr jsou už načtené.
Toto cvičení je součástí kurzu
Intermediate Functional Programming with purrr
Pokyny k cvičení
Vytvoř verzi
GET(), která v případě chyby vrátíNULL.Nastav názvy výsledků.
Odstraň hodnoty
NULL.Extrahuj
"status_code"z každého prvku.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
url_tester <- function(url_list){
url_list %>%
# Map a version of GET() that would otherwise return NULL
map( ___(GET, ___) ) %>%
# Set the names of the result
___( url_list ) %>%
# Remove the NULL
___() %>%
# Extract all the "status_code" elements
map(___)
}
# Try this function on the urls object
___(urls)