Pobieranie kodów statusu za pomocą GET()
W ostatnim ćwiczeniu przejdziemy z funkcji read_lines() na funkcję GET() z pakietu httr.
Na początku stworzymy wersję possibly() funkcji GET(), aby sprawdzić, czy niektóre z posiadanych adresów URL zwracają błąd. Jeśli połączenie z danym adresem URL powiedzie się, zostanie zwrócony obiekt połączenia zawierający element "status_code".
Nie przejmuj się szczegółami wyników – zapamiętaj tylko, że jeśli funkcja GET() zwraca błąd, oznacza to, że dany adres URL jest niedostępny. Numer kodu statusu może brzmieć jak żargon sieciowy, ale omówimy to dokładniej w następnym rozdziale. Na razie wystarczy wiedzieć, że kod 200 oznacza, że wszystko przebiegło zgodnie z oczekiwaniami.
Wektor urls jest dostępny w twoim środowisku, a pakiety purrr i httr zostały już załadowane.
To ćwiczenie jest częścią kursu
Funkcyjne programowanie średnio zaawansowane z purrr
Instrukcje do ćwiczenia
Utwórz wersję funkcji
GET(), która w przypadku błędu zwróciNULL.Nadaj nazwy elementom wynikowej listy.
Usuń wartości
NULL.Wyodrębnij
"status_code"każdego elementu.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
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)