31/10 A 3/11 – ONLINE
5 e 6/11 – ESPM SÃO PAULO

SPRINT QUERIDO DIÁRIO (PARTE 1 DE 2)

DIA:
06/11

HORÁRIO:
14:00h

DURAÇÃO:
1:30h

Sala:
C513

Nível:
Básico

Sobre o workshop

Este workshop funcionou em formato de sprint, primeira atividade deste tipo no Coda.Br. Em uma sprint, um grupo de pessoas colabora para aprimorar um projeto, atingindo uma meta se possível, ao focar exclusivamente em tarefas definidas durante certo tempo.

Nesta sprint, o engenheiro da computação Giulio Carvalho apresentou como funciona o Querido Diário, um projeto que raspa os sites de publicação de diários oficiais de prefeituras e centraliza o conteúdo em um banco de dados acessível por meio de uma plataforma de busca amigável ou uma API. Os diários oficiais registram todos os atos do cotidiano das cidades e costumam ser disponibilizados como um jornal, ainda que digital, em arquivos PDFs – arquivos de formato fechado e proprietário. O layout resistiu às mudanças tecnológicas do tempo sendo basicamente o mesmo desde 1888, o que dificulta o monitoramento automatizado.

Giulio apresentou os aspectos técnicos do repositório no GitHub responsável pela etapa de raspagem, que é realizada utilizando Python e o framework Scrapy. Por padrão, cada site municipal deve possuir seu raspador. É possível que sites sejam muito parecidos – no geral, por serem desenvolvidos pela mesma empresa – permitindo que compartilhem um modelo de código ou também que municípios publiquem seus diários juntos – em forma de associação – fazendo com que um único raspador sirva para várias cidades. A ausência de legislação nacional que padronize como esse tipo de publicação oficial deve ser feita permite esse cenário heterogêneo e faz com que o desafio de raspagem seja ainda maior.

Entre os 5570 municípios brasileiros, a sprint focou em expandir as cidades da região da Amazônia Legal. Pessoas mais experientes em programação se dedicaram a desenvolver raspadores para cidades já mapeadas enquanto as demais colocaram a mão na massa para completar a triagem de cidades – etapa essencial que identifica a situação de publicação do município e classifica a dificuldades ou viabilidade de raspagem, norteando a dedicação de desenvolvedores. Esse exercício possibilitou que experienciassem a diversidade de situações peculiares e barreiras encontradas no dia-a-dia do projeto, fazendo suas próprias descobertas e trocando impressões. 

A sprint alcançou o objetivo de concluir a triagem de todas as 50 mais populosas cidades da Amazônia Legal. Assim, Giulio passou a entrar em aspectos mais técnicos como explorar, utilizando o inspector web do navegador Chrome, as requisições que são feitas às páginas do site e como identificar a que é de interesse para coleta, e que portanto deve ser incluída no desenvolvimento do robô raspador. Além de orientar as boas práticas de raspagem para que os raspadores do projeto não prejudiquem o servidor da prefeitura.

Referências da atividade

giulio

GIULIO CARVALHO

É coordenador do programa Ciência de Dados para Inovação Cívica da Open Knowledge Brasil (OKBR). Graduado do curso de Engenharia da Computação pela UFPE, possui 5 anos de experiência com raspagem e engenharia de dados. Desde 2019, é membro ativo e faz parte da organização do Grupo de Usuários de Python de Pernambuco (PUG-PE). Desde 2020, integra a equipe de mantenedoras do projeto Querido Diário e também a rede de Pessoas Embaixadoras de Inovação Cívica da OKBR.

REALIZAÇÃO

DESENVOLVIDO COM

APOIO

Visite os sites das edições anteriores: 20162017201820192020 e 2021.

Nosso conteúdo está disponível sob a licença Creative Commons Atribuição 4.0 Internacional, e pode ser compartilhado e reutilizado para trabalhos derivados, desde que citada a fonte.