🪧 Vitrine.Dev | |
---|---|
✨ Nome | Web Scraping com Python |
🏷️ Tecnologias | python |
🚀 URL | Notebook no Kaggle |
🔥 Desafio | Conteúdo do curso Web Scraping com Python |
Este foi o último curso da formação Python para Data Science, ministrado pelo instrutor Rodrigo Dias, em que aprendi como extrair dados a partir de uma página web, os principais métodos de pesquisa, navegação e acesso no HTML, com o auxílio do pacote Beautiful Soup. Neste curso, retiramos os dados a partir de um site fictício de anúncio de carros, extraindo informações do tipo:
- valor;
- marca/modelo;
- categoria (se é novo ou usado);
- informações sobre o motor;
- ano de fabricação e quilometragem;
- local que o veículo se encontra;
- e itens adicionais (por exemplo: câmbio automático, central multimídia, freio ABS, etc).
Iniciamos com a retirada individual de cada item, entendendo como acessar cada tag, como usar o método find() para buscar uma tag, específica ou alguma que seja ‘sua irmã’, e como obter os atributos das tags. Com essa etapa concluída, automatizamos a coleta de informações para todos os veículos presentes naquela página e criar um dataframe. Após extrair esses dados, ampliamos a coleta de dados para todos os veículos anunciados e recriar o dataframe.
Para a prática deste curso, eu decidi retirar informações de uma lista do Goodreads. A plataforma possui diversas listas de indicação de leitura, por exemplo, há listas por gênero de livro, por ano de lançamento, local em que a história se passa ou característica do(a) personagem principal.
Eu escolhi trabalhar com a lista Best Books Ever, porque logo nas 20 primeiras posições há tanto livros que já li ou que quero ler, quanto obras que não conheço. Além do título e autor do livro, cada item da lista apresenta:
- a nota média (avg rating);
- a avaliação/classificação (ratings);
- uma pontuação (score);
- e quantas pessoas votaram na obra.
Das quatro informações adicionais, eu decidi não trazer as avaliações, porque ela não está em ordem decrescente ao longo da lista. Por exemplo, o livro To Kill a Mockingbird tem uma classificação maior do que Pride and Prejudice, mas está em uma posição inferior do que a obra de Jane Austen.
Assim como foi feito no curso, iniciei minha prática retirando informações sobre o primeiro item da lista, entendendo como acessar e extrair as informações previamente determinadas, em seguida automatizar a coleta e ampliar para os livros presentes na página. Finalizando com a expansão de coleta de dados para as 100 páginas do site, resultando em um dataframe com 10.000 linhas.
Fazer esta prática foi uma das que mais me diverti, pois trabalhar com HTML me lembrou de quando comecei a gostar de programação e me livrei da sensação de que programação ‘não era para mim’, e juntar livros com análise de dados foi a ‘cereja do bolo’. Em conjunto com este projeto, também encerro a revisão dos cursos da formação Python para Data Science e darei início a revisão de outra formação.
Muito obrigada por chegar até aqui e até a próxima 🤗