Comece agoraComece grátis

Uma versão com possibly() de read_lines()

Ainda estamos trabalhando com a série de URLs que você recebeu para fazer scraping. Estamos testando vários métodos para identificar URLs que não podem ser acessadas. Por que estamos fazendo isso? Porque o primeiro passo do web scraping é analisar se você consegue acessar a URL ou não. É para isso que o código que estamos escrevendo será útil.

No exercício anterior, encapsulamos a função read_lines() dentro de safely(). Neste exercício, vamos usar a função possibly().

Na terminologia da web, 404 indica que uma página não está disponível. Esse número será usado como argumento otherwise.

Além disso, como read_lines() retorna um vetor de comprimento n ao ler uma página, vamos colapsar esse conteúdo usando a função paste().

O vetor urls foi fornecido para você.

Este exercicio faz parte do curso

Programação Funcional Intermediária com purrr

Ver curso

Instruções do exercicio

  • Encapsule a função read_lines() em uma chamada a possibly() que retorne 404 em otherwise.

  • Aplique essa nova função na lista de URLs usando map e já encadeie o resultado em set_names()

  • Transforme cada elemento dessa lista em uma string de comprimento 1 usando a função paste(), com o argumento collapse definido como " ".

  • Mantenha apenas os elementos que são iguais a 404.

exercicio interativo prático

Tente este exercicio completando este código de exemplo.

# Create a possibly() version of read_lines()
possible_read <- ___(___, otherwise = ___)

# Map this function on urls, pipe it into set_names()
res <- map(urls, ___) %>% ___(urls)

# Paste each element of the list 
res_pasted <- ___(res, ___, collapse = ___)

# Keep only the elements which are equal to 404
___(res_pasted, ___)
Editar e Executar Código