Article image
Julian Gamboa
Julian Gamboa22/12/2024 04:41
Compartilhe

1388

    Extraindo meus certificados da DIO com Puppeteer: um guia prático

    --

    Como entusiasta da programação, sempre busquei aprimorar minhas habilidades através de cursos online. A Digital Innovation One (DIO) tem sido uma grande aliada nessa jornada, e graças a ela, conquistei 817 certificados. No entanto, a plataforma da DIO não me permitia visualizar todas as imagens dos meus certificados em uma única página (https://web.dio.me/certificates).

    --

    Para solucionar esse problema, decidi utilizar a técnica de Web Scraping. O Web Scraping é um processo que permite extrair dados de páginas da web de forma automatizada. Com ele, é possível coletar informações como texto, imagens e links.

    --

    Dentre as diversas ferramentas disponíveis para realizar Web Scraping, escolhi o Puppeteer. O Puppeteer é uma biblioteca Node.js que oferece um alto nível de controle sobre o navegador Chromium, tornando-o ideal para tarefas complexas de scraping.

    ---> Minha solução:

    Para extrair e salvar todas as imagens dos meus certificados, desenvolvi um script utilizando a biblioteca Puppeteer. Esse script simula as ações de um usuário em um navegador real, navegando até a página de certificados da DIO, identificando cada certificado e salvando suas imagens em um diretório local.

    ---> Desafios e aprendizados:

    Ao longo do desenvolvimento do script, enfrentei alguns desafios, como:

    • Identificação precisa dos elementos: A estrutura da página da DIO pode mudar ao longo do tempo, o que exige ajustes nos seletores CSS utilizados para identificar os elementos desejados.
    • Gerenciamento de erros: É importante tratar os erros que podem ocorrer durante a execução do script, como falhas de conexão ou elementos não encontrados.
    • Performance: Para evitar sobrecarregar o servidor da DIO, é recomendado implementar mecanismos de espera entre as requisições.

    Resultados:

    Com este script, consegui criar uma coleção completa e organizada de todos os meus certificados da DIO. Além disso, aprendi a utilizar o Puppeteer de forma eficaz, abrindo portas para outros projetos de Web Scraping.

    Próximos passos:

    Pretendo aprimorar ainda mais o script, adicionando funcionalidades como:

    • Autenticação: Implementar um mecanismo de login automático para evitar a necessidade de digitar as credenciais manualmente a cada execução.
    • Organização dos arquivos: Criar uma estrutura de pastas mais organizada para armazenar os certificados, facilitando a busca e a visualização.
    • Personalização: Permitir que o usuário configure o script para salvar os certificados em diferentes formatos ou localizações.

    ----Conclusão:

    O Web Scraping é uma ferramenta poderosa que pode ser utilizada para automatizar diversas tarefas e extrair dados de diversas fontes. Neste artigo, demonstrei como utilizei o Puppeteer para resolver um problema específico e alcançar um resultado satisfatório.

    Compartilhando conhecimento:

    Espero que este artigo inspire outros desenvolvedores a explorar o mundo do Web Scraping e a criar suas próprias soluções personalizadas. O código completo do meu script está disponível em

    https://gist.github.com/julian-gamboa-ensino/df45556c2493cdd26b530eece7c4a617

    Sinta-se à vontade para fazer um fork e adaptá-lo às suas necessidades.

    Palavras-chave: Web Scraping, Puppeteer, DIO, certificados, Node.js, programação

    Atualização da série de artigos:

    https://web.dio.me/articles/881?back=%2Farticles&page=1&order=oldest

    https://web.dio.me/articles/817?back=%2Farticles&page=1&order=oldest

    Compartilhe
    Comentários (1)
    Ronaldo Schmidt
    Ronaldo Schmidt - 22/12/2024 13:16

    Olá amigo.

    Do ponto de vista academico te parabenizo pela solução aplicada e a didatica utilizada.

    Mas temos que levantar algumas questões antes de utilizar tais métodos.

    O scraping, se não for bem controlado, pode sobrecarregar os servidores do site, afetando a performance ou até mesmo causando quedas temporárias. Isso pode ser prejudicial, especialmente se for feito em grande escala ou com alta frequência.

    Se você precisa usar o scraping para fins legítimos , é importante adotar práticas que minimizem riscos e respeitem as regras:

    • Sempre leia e respeite os termos de uso do site antes de realizar scraping.
    • Quando possível, entre em contato com o proprietário do site para pedir permissão para coletar dados ou use APIs oficiais disponibilizadas.
    • Limite a taxa de requisições feitas ao site para evitar sobrecarga no servidor.
    • Respeitar os Arquivos robots.txt responsaveis pelas regras para bots da web.
    • Certifique-se de que seu scraper respeite essas diretrizes.
    • Se estiver coletando dados pessoais, tenha a devida autorização e cumpra as legislações de proteção de dados aplicáveis.

    O uso de web scraping pode ser uma ferramenta útil, mas deve ser abordado com cuidado, respeitando as leis, as normas éticas e as limitações técnicas. Quando realizado sem a devida consideração, pode resultar em consequências negativas tanto para quem faz o scraping quanto para os proprietários dos sites de origem.

    Até...