Extraindo códigos de status com GET()
Neste último exercício, vamos trocar a função read_lines() pela função GET() do httr.
Primeiro, vamos criar uma versão de GET() com possibly() para testar se algumas das URLs que você tem retornam erro. Se você conseguir acessar a URL, será retornado um objeto de conexão. Nele, você encontrará um elemento "status_code".
Não se prenda aos resultados; basta lembrar que, se uma chamada GET() retornar um erro, é porque a URL não está disponível. O número do código de status que estamos retornando pode parecer um pouco jargão da web, mas vamos falar disso com mais profundidade no próximo capítulo. Por enquanto, lembre-se apenas de que 200 significa que tudo ocorreu como esperado.
O vetor urls está disponível no seu workspace; purrr e httr já foram carregados para você.
Este exercicio faz parte do curso
Programação Funcional Intermediária com purrr
Instruções do exercicio
Crie uma versão de
GET()que retorneNULLem caso de erro.Defina os nomes dos resultados.
Remova os
NULL.Extraia o
"status_code"de cada elemento.
exercicio interativo prático
Tente este exercicio completando este código de exemplo.
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)