Skip to content

Diário de Bordo – Daniel Rodrigues da Rocha

Disciplina: Gerência de Configuração e Evolução de Software Equipe: WebScrapping Comunidade/Projeto de Software Livre: Check-up


Sprint 0 – 02/09/2025 - 10/09/2025

Resumo da Sprint

Breve descrição das atividades e reflexões.

Atividades Realizadas

Data Atividade Tipo (Código/Doc/Discussão/Outro) Link/Referência Status
02/09 Leitura da Documentação do projeto Base Estudo/Ambientação Docs Concluído
02/09 Leitura do README.md do Projeto Base Estudo/Ambientação README Concluído
04/09 Configuração do Ambiente Local Configuração Concluído
08/09 Fork do Repositório Configuração Repositório Concluído
08/09 Criação do Repositório de Documentação Configuração Repositório Concluído
08/09 Definição do Guia de Contribuição Doc PR#4 Concluído
08/09 Definição do Código de Conduta Doc PR#4 Concluído
08/09 Revisão de Pull Request na Documentação Revisão PR#3 Concluído
09/09 Contribuições na Documentação da Equipe Doc PR#8 Concluído

Maiores Avanços

  • Aprendi a rodar a aplicação localmente.
  • Entendi melhor a organização do repositório.

Maiores Dificuldades

  • Entender qual o repositório base para a atividade focada em WebScrapping;
  • Comunicação com a equipe.

Aprendizados

  • Definir políticas para branchs, commits etc, ajudam muito a padronizar a comunicação e tornar correções mais rápidas.
  • Aprendi como funciona o fluxo de contribuição do projeto.

Plano Pessoal para a Próxima Sprint

  • Entender e avançar com contribuições envolvendo GCES da comunidade;
  • Concluir 1 contribuição com a criação de um PR;
  • Participar com a revisão de 1 PR da equipe;

Sprint 1 – 15/09/2025 - 24/09/2025

Resumo da Sprint

A sprint foi focada em analisar a organização de GCES da comunidade EH FAKE e contribuir em novas configurações que assegurassem boas práticas de gerenciamento.

Atividades Realizadas

Data Atividade Tipo (Código/Doc/Discussão/Outro) Link/Referência Status
22/09 Fork do Repositório de Documentação Oficial do Eh Fake Configuração Fork Concluído
23/09 Estudo e Verificação das Issues Template Existente e CI/CD's ativos Estudo/Ambientação Workflows Concluído
23/09 Contribuição com 2 novos template de Issues para o CheckUp Código PR#29 Concluído
23/09 Contribuição com a correção de contatos no template de Issues Código PR#24 Concluído
23/09 Contribuição com o desenvolvimento de novos CI's para Issues Automáticas Código PR#28 Concluído
24/09 Contribuições na Documentação da Equipe Doc PR#32 Concluído

Maiores Avanços

  • Consegui resolver o problema com a execução de screapes;
  • Contribui com melhorias de GCES para a comunidade EH FAKE.

Maiores Dificuldades

  • Conseguir uma validação rápida com o mantenedor do projeto;
  • Comunicação com a equipe.

Aprendizados

  • Compreendi melhor a estrutura de templates de Issues e como eles padronizam a comunicação na comunidade;
  • Aprendi sobre CI/CD workflows e como automatizar processos de Issues no GitHub;
  • Desenvolvi habilidades em configuração de GitHub Actions para automação de tarefas;
  • Entendi a importância da validação rápida com mantenedores para manter o fluxo de contribuições;
  • Percebi como contribuições em GCES podem impactar positivamente a organização e práticas de um projeto open source.

Plano Pessoal para a Próxima Sprint

  • Selecionar um jornal para início do processo de WebScraping;
  • Concluir 1 contribuição com a criação de um PR;
  • Participar com a revisão de 1 PR da equipe;

Sprint 2 – 29/09/2025 - 08/10/2025

Resumo da Sprint

A sprint 2 foi o início às contribuições de novos spiders e plays para a comunidade EH FAKE. O site jornalístico escolhido para a contribuição foi o Cada Minuto, um dos sites que não foram avaliados por análises de fake news no projeto.

Atividades Realizadas

Data Atividade Tipo (Código/Doc/Discussão/Outro) Link/Referência Status
30/09 Criação do Plays para o Jornal Cada Minuto Código Commit Concluído
07/10 Criação do Spiders para o Jornal Cada Minuto Código Commit Concluído

Maiores Avanços

  • Implementação completa do scraper Cada Minuto: Desenvolvido tanto o spider (coleta de URLs) quanto o play (extração de conteúdo) com sucesso, coletando 55 URLs na primeira execução;
  • Resolução de problemas técnicos complexos: Superou múltiplos desafios técnicos incluindo problemas de permissões, configuração do Playwright e dependências do Docker;
  • Domínio da arquitetura do projeto: Compreendi como spiders e plays interagem, desde a coleta até o armazenamento no PostgreSQL;
  • Aplicação prática dos tutoriais: Seguiu com sucesso os guias TUTORIAL_CRIACAO_DO_ZERO.md e TUTORIAL_SPIDERS_PLAYS.md, validando sua eficiência.

Maiores Dificuldades

  • Problemas de permissões em containers Docker: Enfrentei múltiplos erros de permissão nas pastas sessions/, screenshots/ e .cache/, exigindo correções manuais com chmod 777;
  • Configuração do Playwright: Tive problemas com instalação de browsers (Firefox vs Chromium), dependências gráficas e timeouts em ambiente headless;
  • Debugging de containers: Precisei navegar entre diferentes comandos Docker (exec vs run --rm) para resolver problemas de execução;
  • Análise de HTML complexo: O site Cada Minuto possui estrutura mista (notícias + vídeos + subdomínios) que exigiu seletores CSS específicos e filtros robustos.

Aprendizados

  • Arquitetura de Web Scraping: Aprofundei conhecimento na separação entre coleta de URLs (spiders) e extração de conteúdo (plays), entendendo como cada componente se integra;
  • Playwright em produção: Aprendi sobre configuração de browsers headless, gerenciamento de sessões persistentes, tratamento de timeouts e resolução de problemas gráficos;
  • Docker e permissões: Compreendi como permissões de containers afetam operações de arquivo e como resolver conflitos entre usuários do host e container;
  • Gestão de configuração: Entendi a importância de configurações adequadas no Makefile, Dockerfile e arquivos __init__.py para integração de novos componentes.

Plano Pessoal para a Próxima Sprint

  • Finalizar PR do scraper Cada Minuto: Criar pull request com toda a implementação desenvolvida, incluindo testes e documentação adequada;
  • Implementar testes automatizados: Desenvolver testes unitários para validar o spider e play do Cada Minuto conforme padrões do projeto;
  • Otimizar performance: Analisar e melhorar eficiência do scraper, incluindo tratamento de erros e retry mechanisms;
  • Revisar PR de colega: Participar da revisão de pelo menos 1 PR de outro membro da equipe;

Sprint 3 – 09/10/2025 - 22/10/2025

Resumo da Sprint

A Sprint 3 foi focada na reorganização e centralização da documentação da comunidade EH FAKE. O objetivo principal foi migrar todo o conteúdo do repositório de documentação separado (EH-FAKE/docs) para o repositório principal do projeto (EH-FAKE/check-up), criando uma estrutura unificada e eliminando a necessidade de manter dois repositórios distintos. Esta consolidação visa simplificar a manutenção, melhorar a descoberta de informações e centralizar todas as contribuições em um único local.

Atividades Realizadas

Data Atividade Tipo (Código/Doc/Discussão/Outro) Link/Referência Status
11/10/2025 Análise e entendimento da estrutura do repositório de documentação antigo (EH-FAKE/docs) Doc/Estudo EH-FAKE/docs Concluído
18/10/2025 Transferência e organização dos arquivos de documentação para o repositório principal Doc - Concluído
21/10/2025 Abertura do Pull Request para migração da documentação para a branch documentation Doc/Discussão PR#62 Concluído
21/10/2025 Criação e abertura da Issue para acompanhar a centralização da documentação Doc/Discussão Issue#63 Concluído
21/10/2025 Revisão, ajustes, testes e aprovação da documentação migrada em dupla, com envio do PR para o repositório principal Doc/Discussão/Teste - Concluído

Maiores Avanços

  • Unificação bem-sucedida dos repositórios: Conseguir migrar com sucesso toda a documentação do repositório separado para o repositório principal, criando uma estrutura de projeto mais coesa;
  • Configuração de CI/CD para documentação: Implementar workflow automatizado para build e deploy da documentação usando GitHub Actions, garantindo que mudanças sejam refletidas automaticamente;
  • Criação da branch documentation: Estabelecer uma branch dedicada para gerenciar a documentação, permitindo workflows específicos sem interferir no desenvolvimento principal;
  • Colaboração efetiva em dupla: Trabalhar em conjunto com outro membro da equipe para revisar, testar e validar toda a migração antes do merge;
  • Estruturação de Issue tracking: Criar issue específica para acompanhar o processo de centralização, estabelecendo transparência e rastreabilidade das mudanças.

Maiores Dificuldades

  • Análise e curadoria de conteúdo: Determinar quais conteúdos do repositório antigo eram relevantes e quais deveriam ser removidos ou atualizados exigiu análise cuidadosa;
  • Configuração do workflow de CI/CD: Enfrentou desafios na configuração do GitHub Actions para funcionar especificamente com a branch documentation, incluindo problemas de trigger e permissões;
  • Migração de histórico: Preservar contexto histórico importante durante a transferência de arquivos entre repositórios sem perder rastreabilidade;
  • Coordenação entre repositórios: Gerenciar a transição de forma que não impactasse contribuidores ativos em ambos os repositórios durante o período de migração;
  • Testes de integração: Validar que todos os links, referências e dependências continuaram funcionando após a migração da estrutura.

Aprendizados

  • Gestão de repositórios: Compreendi melhor as vantagens de manter documentação e código no mesmo repositório, incluindo facilidade de sincronização e redução de overhead de manutenção;
  • GitHub Actions avançado: Aprofundei conhecimento em workflows condicionais, triggers específicos por branch e configuração de permissões para deployment automatizado;
  • Curadoria de documentação: Aprendi a avaliar criticamente conteúdo de documentação, identificando o que agrega valor versus o que pode estar desatualizado ou redundante;
  • Colaboração em migração: Desenvolveu habilidades de trabalho em dupla para validação de mudanças estruturais importantes, entendendo a importância de revisão cruzada;
  • Estratégias de consolidação: Entendi como planejar e executar migrações de repositórios mantendo integridade e continuidade do projeto.

Plano Pessoal para a Próxima Sprint

  • Finalizar PR do scraper Cada Minuto: Retomar o desenvolvimento do scraper pausado durante a Sprint 3, criando pull request com implementação completa e documentação atualizada;
  • Melhorar documentação técnica: Com a nova estrutura unificada, contribuir com melhorias na documentação técnica do projeto, especialmente nos tutoriais de criação de scrapers;
  • Configurar monitoramento de documentação: Implementar verificações automáticas de qualidade da documentação (links quebrados, formatação, etc.) no workflow de CI/CD;
  • Revisar PRs da equipe: Participar ativamente da revisão de pull requests de outros membros, especialmente aqueles relacionados à nova estrutura de documentação;

Sprint 4 – 23/10/2025 - 19/11/2025

Resumo da Sprint

A Sprint 4 foi focada em contribuições de correção e implementação de novos scrapers. O destaque foi a criação do scraper para o portal O Imirante e Portal Uai, seguindo a metodologia estabelecida nos tutoriais do projeto. Além disso, contribuí com correções importantes de bugs relacionados à configuração do ambiente de desenvolvimento, melhorando a experiência de novos contribuidores.

Atividades Realizadas

Data Atividade Tipo (Código/Doc/Discussão/Outro) Link/Referência Status
25/10/2025 Implementação do spider para O Imirante Código - Concluído
28/10/2025 Implementação do play para O Imirante Código - Concluído
02/11/2025 Correção de bugs na configuração do ambiente de desenvolvimento Código - Concluído
04/11/2025 Documentação e integração do scraper O Imirante Doc - Concluído
04/11/2025 PR realizado para o web-scraping do Imirante Código PR #34 Concluído
07/11/2025 Início da implementação do scraper para o Portal UAI Código - Concluído
10/11/2025 Continuação da implementação do scraper para o Portal UAI Código - Concluído
15/11/2025 Otimização de performance dos scrapers existentes Código - Concluído
17/11/2025 Atualização da documentação técnica referente ao novo scraper do Portal UAI Doc - Concluído
18/11/2025 Contruibuição com correção de bug de dependências na configuração de ambiente Código Commit no PR #21 Concluído
19/11/2025 Lançamento do Pull Request para o Web-Scraping do Portal Uai Código PR #36 Concluído

Maiores Avanços

  • Implementação completa do scraper O Imirante: Desenvolvido com sucesso tanto o spider quanto o play, conseguindo extrair notícias do portal maranhense com alta taxa de sucesso;
  • Resolução de bugs críticos de ambiente: Identifiquei e corrigi problemas importantes na configuração do ambiente que estavam impactando novos contribuidores;
  • Aplicação consolidada da metodologia: Utilizei com eficiência os tutoriais estabelecidos, validando novamente a robustez do processo de criação de scrapers;
  • Melhoria da experiência do desenvolvedor: As correções de bugs tornaram o setup inicial mais estável e confiável.
  • Desenvolvimento do scraper para o Portal UAI: Avanços significativos na implementação de um scraper capaz de navegar e extrair dados de múltiplos domínios da rede UAI;
  • Otimizações de performance: Identificação e aplicação de melhorias de performance em scrapers existentes, resultando em execuções mais rápidas e eficientes;
  • Documentação atualizada: Manutenção da documentação técnica em dia, refletindo as últimas mudanças e melhorias implementadas nos scrapers.

Maiores Dificuldades

  • Análise da estrutura específica do Imirante: O portal possui algumas peculiaridades na estrutura HTML que exigiram seletores CSS mais específicos;
  • Debugging de problemas de ambiente: Identificar as causas raiz dos bugs de configuração exigiu análise detalhada dos logs e dependências;
  • Balanceamento de prioridades: Gerenciar o desenvolvimento do novo scraper junto com as correções de bugs existentes;
  • Compatibilidade entre versões: Garantir que as correções funcionassem em diferentes ambientes e configurações.
  • Complexidade do Portal UAI: O portal possui uma estrutura complexa com múltiplos subdomínios e diferentes formatos de página, exigindo uma abordagem mais elaborada para o scraping;
  • Testes e validação: Devido à complexidade e volume de dados, os testes e validações do novo scraper estão levando mais tempo do que o esperado;
  • Gerenciamento de tempo: Balancear o tempo entre a implementação do novo scraper e a otimização dos já existentes.

Aprendizados

  • Depuração sistemática: Aprimorei técnicas de debugging para identificar rapidamente problemas de configuração em ambientes containerizados;
  • Análise de estruturas web diversas: Desenvolvi maior habilidade para adaptar scrapers a diferentes layouts e estruturas HTML;
  • Importância de correções de ambiente: Compreendi como bugs de configuração podem impactar significativamente a produtividade da equipe;
  • Consolidação de conhecimento: Reforçou minha compreensão da arquitetura de scrapers e do fluxo de desenvolvimento do projeto;
  • Gestão de múltiplas contribuições: Aprendi a organizar melhor o trabalho quando lidando com diferentes tipos de tarefas simultaneamente.
  • Scraping de sites complexos: Aprendi a lidar com a complexidade de sites que possuem múltiplos domínios e estruturas de página variadas;
  • Técnicas de otimização: Aprofundei conhecimentos em técnicas de otimização de código e consultas ao banco de dados, melhorando a performance geral dos scrapers;
  • Importância da documentação: Reforcei a prática de manter a documentação sempre atualizada, facilitando a manutenção e evolução dos scrapers.

Plano Pessoal para a Próxima Sprint

Sem planejamento