<aside> 💵 Scraper de Fiscalização

</aside>

Descrição

Qual é o nosso objetivo?

Denunciar políticos safados para o Ministério Público, retirando-os da política, combatendo a corrupção no município e implementando ideais libertários no Brasil.

Quem é o público-alvo?

Defensores da liberdade que querem embarcar no universo da programação, construindo um portfólio com projetos reais, voltados para soluções práticas em prol da liberdade. E gente que quiser usar a ferramenta para denunciar corrupção.

Qual é o problema a resolver?

Existem empresas criadas apenas para ganhar licitações. São empresas de fachada que podem ser identificadas do seguinte modo: quando há uma única conta bancária registrada para duas ou mais empresas que prestam serviço para o governo através de licitações. Contudo, é bastante custoso analisar e comparar todos os contratos registrados manualmente para encontrar as contas repetidas, por isso a criação do web scraper.

Qual é a solução?

Desenvolver um web scraper capaz de capturar os números das contas bancárias registradas em diversos contratos. Posteriormente, tratar estes dados e verificar números repetidos.


Links e Artigos

<aside> 🚨 Os links abaixo podem não ser a melhor solução para o problema proposto e, por isso, podem e devem ser atualizados por todos os membros do grupo, a medida que conteúdos melhores forem encontrados.

</aside>

Inglês

How To Easily Scrape Multiple Pages of a Website Using Python

A simple guide to extracting data from websites with Python

Selecting content on a web page with CSS selectors

Selecting content on a web page with CSS selectors

Português

Webscraping de 1000 Páginas Automaticamente no Python

TUTORIAL PRINCIPAL: Mostra como guardar informações de texto da página

Webscraping no Python com Scrapy - Busca de Dados na Web

Artigo: Web Scraping no Python com Scrapy (praticamente o mesmo conteúdo do vídeo acima)

Web Scraping com Python e Beautiful Soup

Canal do Telegram: Web Scraping com Python e Beautiful Soup


Informações Que Vamos Buscar

<aside> 🔎 Em licitação de obras no Portal da Transparência.

</aside>

1º link

Detalhamento Convênios e Outros Acordos - Portal da transparência

Exemplo de uma busca com filtro para Guarulhos e data. Não há necessidade de filtros, podendo ser qualquer outro lugar e data.

2º link

Clicando em “Detalhar” de algum convênio (obra), que apareceu no resultado da pesquisa do 1º link, você é redirecionado para este link.

Neste link, o web scraper deve coletar o “Número de instrumento”.

3º link

HTTP Post Binding (Request)

Clicando no “número do instrumento” (canto superior esquerdo do 2º link) vc cai nesse link.

4º link

Clique em “Execução Convenente” e aparecerá um menu.

5º link

HTTP Post Binding (Request)

Clicando em “Documento de Liquidação” no menu que apareceu, vc verá esta página

6º link

Nesta página, o web scraper deve clicar em um por um dos itens dentro da tabela, na coluna “Tipo”, e coletar os dados bancários que aparecerão em cada uma dessas páginas.

7º link

HTTP Post Binding (Request)

Esta é uma das páginas da tabela. Devemos coletar, abaixo de “Dados Bancários do Favorecido”, as informações “banco”, “agência” e “conta”.

Observações

O site não funciona no navegador Brave.


Sprint Planning

O que será feito?

Ao longo da primeira e única Sprint para este projeto, será primeiramente feita uma busca de conhecimento sobre como fazer um web scraper que capture informações de diversas páginas. O conhecimento será adquirido principalmente de tutoriais, mas também poderá vir de outros recursos caso necessário. Após estarmos munidos de informações bem compreendidas, daremos início ao código do web scraper, cada um em seu ambiente de desenvolvimento e compartilhando informações do que deu certo e do que não deu certo através do grupo no WhatsApp e calls no Gather. Buscaremos mais informações conforme necessário. É essencial que todos os participantes entendam a fundo o código desenvolvido.