Web Scraping com Python
scraping-com-python
🪧 Vitrine.Dev | |
---|---|
✨ Nome | Web Scraping com Python |
🏷️ Tecnologias | python |
🚀 URL | Notebook no Kaggle |
🔥 Desafio | Conteúdo do curso Web Scraping com Python |
Sobre o curso 📚
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.
Minha prática 👩🏻💻
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.
Conclusão 🏁
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 🤗