Script em Python usando Selenium para coletar dados públicos dos projetos diretamente do portal da UFSM.
O bot navega pelo site e coleta:
- Número do projeto
- Título
- Data de início
- Data de fim
- Situação
- Coordenador
- Resumo (armazenado, não exibido completo)
Ele percorre todas as páginas, entra no detalhe de cada projeto e extrai as informações.
- Python 3
- Selenium
- Google Chrome + ChromeDriver
pip install selenium
python nome_do_arquivo.py
Fluxo do script:
- Acessa a página de projetos
- Clica em "Pesquisar"
- Percorre a tabela de resultados
- Para cada projeto:
- Abre o detalhe
- Extrai os dados
- Volta para a lista
- Clica em "Pesquisar" novamente
- Retorna para a página correta
- Avança para a próxima página
- Repete até o final
- Paginação (botão "Próxima página")
- Recarregamento da tabela ao voltar
- Evita erro de índice (IndexError)
- Evita erro de elemento não encontrado
- Uso de sleep para evitar problemas de carregamento
{ "numero": "065298", "titulo": "Efeitos das Práticas Integrativas...", "inicio": "03/08/2026", "fim": "31/07/2030", "situacao": "Em andamento", "coordenador": "AUTOR DO PROJETO", "resumo_len": 2242 }
- Salvar dados em banco (PostgreSQL / MySQL)
- Exportar para CSV ou JSON
- Rodar automaticamente (cron job)
- Substituir sleep por WebDriverWait
- Paralelizar a coleta
- O site utiliza carregamento dinâmico, por isso o uso de Selenium
- Sempre que o bot volta da página de detalhe, é necessário clicar novamente em "Pesquisar"
- O script simula a navegação de um usuário
Bruno Munizz