DataScrapper para visualizar um mapa dos servidores públicos

12 views
Skip to first unread message

Leandro Salvador

unread,
Apr 2, 2011, 2:17:20 PM4/2/11
to thac...@googlegroups.com
Olá THackers!

Por acaso há algum "data scrapper expert" aqui disposto a criar um script capaz de raspar um PDF típico como "input", que gere um CSV como "output"?

Trata-se do seguinte: o Governo do Estado de São Paulo disponibiliza, no site "Prestando Contas", todos os cargos e funções ocupados por todos (até onde sei) os servidores públicos paulistas. Nitidamente, trata-se de um conjunto de planilhas com o mesmo layout, mas que foram disponibilizadas à humanidade, adivinhem!!!, em PDF, claro! :)

Daí que, apesar de estar disponível apenas no não-legível-por-máquina formato PDF, uma vez criado o CSV, há dimensões razoavelmente bem estruturadas de dados disponíveis para cruzamentos ali. Dá pra ver, por exemplo, a proporção de cargos comissionados em relação ao total de cargos em diferentes níveis de resolução (secretarias, coordenadorias, departamentos)... é show de bola!

O que não sei é como automatizar este processo, alguém aqui sabe e habilita-se? :)

Segue o mapa-da-mina:

3. Servidores do Poder Executivo

Utilizando os filtros do Excel já dá para fazer diveeersas visualizações...
Tenham um ótimo final de semana!
Abraços!
PS: Segue anexo um XLS (CSV) com os dados já raspados do link da SGP exemplificado acima. Se conseguirmos fazer isso com todas as secretarias, depois acoplarmos numa só base de dados, já pensaram no que dará pra visualizar? :) :) :) E é trabalho fácil... se alguém conseguir raspar de todas as secretarias (PDFs), me comprometo a fazer o resto...
SGP_Funcionarios.xls

Pedro Markun

unread,
Apr 2, 2011, 2:47:11 PM4/2/11
to thac...@googlegroups.com, Leandro Salvador
Leandro,

vou brincar aqui, faz tempo que quero aprender a scrapear pdfs tb. E o scraperwiki tem tentando melhorar o scraping ede pdfs.


Mas ó, vou cobrar as visualizações, hein!

[]'s
Pedro Markun

2011/4/2 Leandro Salvador <leandro...@gmail.com>
--
Você está recebendo esta mensagem porque se inscreveu no grupo "Transparência Hacker" dos Grupos do Google.
Para postar neste grupo, envie um e-mail para thac...@googlegroups.com.
Para cancelar a inscrição nesse grupo, envie um e-mail para thackday+u...@googlegroups.com.
Para obter mais opções, visite esse grupo em http://groups.google.com/group/thackday?hl=pt-BR.

Leandro Salvador

unread,
Apr 2, 2011, 3:31:41 PM4/2/11
to thac...@googlegroups.com
Fechou Markun! Trato feito!

Pra facilitar, exceto o PDF da Secretaria de Educação (que é gigante: 54MB), todos os outros estão aqui:


See you!

Luis Leao

unread,
Apr 2, 2011, 3:39:23 PM4/2/11
to thac...@googlegroups.com, Pedro Markun, Leandro Salvador
http://scraperwiki.com/scrapers/mapaservidorespublicossp/

Precisa puxar os endereços dos PDF's

[]'s



2011/4/2 Pedro Markun <pe...@esfera.mobi>

Thiago Avila

unread,
Apr 2, 2011, 3:54:04 PM4/2/11
to thac...@googlegroups.com
IMO, esta informacao deveria ser publicada nos sites obrigatoriamente,
a exemplo do Portal do Mato Grosso - www.mt.gov.br secao Quem e Quem,
que da acesso facil e rapido a base de servidores publicos do Governo.

Bom trabalho para voces.

Em 02/04/11, Luis Leao<luis...@gmail.com> escreveu:


> http://scraperwiki.com/scrapers/mapaservidorespublicossp/
>
> Precisa puxar os endereços dos PDF's
>
> []'s
>
>
>
> 2011/4/2 Pedro Markun <pe...@esfera.mobi>
>
>> Leandro,
>>
>> vou brincar aqui, faz tempo que quero aprender a scrapear pdfs tb. E
>> o scraperwiki tem tentando melhorar o scraping ede pdfs.
>>
>>
>> http://blog.scraperwiki.com/2010/12/17/scraping-pdfs-now-26-less-unpleasant-with-scraperwiki/
>>
>> Mas ó, vou cobrar as visualizações, hein!
>>
>>

>> <http://blog.scraperwiki.com/2010/12/17/scraping-pdfs-now-26-less-unpleasant-with-scraperwiki/>


>> []'s
>> Pedro Markun
>>
>>
>> 2011/4/2 Leandro Salvador <leandro...@gmail.com>
>>
>>> Olá THackers!
>>>
>>> Por acaso há algum "data scrapper expert" aqui disposto a criar um script
>>> capaz de raspar um PDF típico como "input", que gere um CSV como
>>> "output"?
>>>
>>> Trata-se do seguinte: o Governo do Estado de São Paulo disponibiliza, no
>>> site "Prestando Contas", todos os cargos e funções ocupados por todos
>>> (até
>>> onde sei) os servidores públicos paulistas. Nitidamente, trata-se de um
>>> conjunto de planilhas com o mesmo layout, mas que foram disponibilizadas
>>> à
>>> humanidade, adivinhem!!!, em PDF, claro! :)
>>>
>>> Daí que, apesar de estar disponível apenas no não-legível-por-máquina
>>> formato PDF, uma vez criado o CSV, há dimensões razoavelmente bem
>>> estruturadas de dados disponíveis para cruzamentos ali. Dá pra ver, por
>>> exemplo, a proporção de cargos comissionados em relação ao total de
>>> cargos
>>> em diferentes níveis de resolução (secretarias, coordenadorias,
>>> departamentos)... é show de bola!
>>>
>>> O que não sei é como automatizar este processo, alguém aqui sabe e
>>> habilita-se? :)
>>>
>>> Segue o mapa-da-mina:
>>>

>>> 1. Página da Secretaria de Fazenda <http://www.fazenda.sp.gov.br/>
>>> <http://www.fazenda.sp.gov.br/>2. Prestando
>>> Contas<http://www.fazenda.sp.gov.br/contas1/default.shtm>
>>> <http://www.fazenda.sp.gov.br/contas1/default.shtm>3. Servidores do Poder


>>> Executivo
>>> 4. Relação de Servidores por

>>> Secretaria<https://www.fazenda.sp.gov.br/SigeoLei131/Paginas/DDPEEscolhaConsulta.aspx>
>>> 5. Secretaria de Gestão
>>> Pública<https://www.fazenda.sp.gov.br/SigeoLei131/Paginas/Arquivos/PAGD471.ORG044.DT012011.pdf>

--
Enviado do meu celular

Thiago Ávila
+ 55 82 88061783
http://www.thiagoavila.net

Pedro Markun

unread,
Apr 2, 2011, 4:08:01 PM4/2/11
to Luis Leao, thac...@googlegroups.com, Leandro Salvador
http://scraperwiki.com/scrapers/cargosefuncoes-sp/

pô,

seu código esta muito mais bonito =P

2011/4/2 Luis Leao <luis...@gmail.com>

Pedro Markun

unread,
Apr 2, 2011, 4:10:58 PM4/2/11
to thac...@googlegroups.com, Leandro Salvador
erro 404 aqui leandro.

2011/4/2 Leandro Salvador <leandro...@gmail.com>

--

Lucas Araújo

unread,
Apr 2, 2011, 2:55:03 PM4/2/11
to thac...@googlegroups.com
Oi Leandro,

Legal.
Se alguém souber de alguma boa ferramenta que faz o scrap de PDF também seria util para mim.
Estou tentando fazer o scrapping dos dados das votacoes dos senadores que estao em PDF.

Abraços.

Lucas

Luis Leao

unread,
Apr 2, 2011, 4:16:43 PM4/2/11
to Pedro Markun, thac...@googlegroups.com, Leandro Salvador
:P

falta colocar o resto dos links.
pelo que vi pegou um pdf bem grande, mas não sei se vai rolar (estourar o timeout de CPU).

tinha feito primeiro separando as colunas pelo atributo "left", mas em cada arquivo muda a posição. Então vi que há um node "text" para cada coluna e o primeiro da página é o cabeçalho.

Acabei de ver agora que não tem cabeçalho da segunda página em diante. Vou corrigir ;)



um tipo de inconsistência que pode acontecer: uma pessoa lotada em duas áreas.
será que vamos encontrar isso ao unir os arquivos?



[agora foi to all] rs

2011/4/2 Pedro Markun <pe...@esfera.mobi>

André Lima

unread,
Apr 2, 2011, 8:08:45 PM4/2/11
to thac...@googlegroups.com
Galera, "scrape" e "scraper", com um pê. :c)

[]s

2011/4/2 Luis Leao <luis...@gmail.com>

Daniela B. Silva

unread,
Apr 2, 2011, 8:26:23 PM4/2/11
to thac...@googlegroups.com, André Lima
A gente devia adotar scrappper, assim ninguém erra mais.

2011/4/2 André Lima <andre...@gmail.com>

Pedro Markun

unread,
Apr 2, 2011, 9:17:45 PM4/2/11
to thac...@googlegroups.com, Daniela B. Silva, André Lima
precisamos testar um pouco mais...

e ainda faltam três departamentos. mas já da pra brincar.


abs,
pedro

2011/4/2 Daniela B. Silva <daniel...@gmail.com>

Leandro Salvador

unread,
Apr 3, 2011, 2:49:57 PM4/3/11
to thac...@googlegroups.com
2011/4/2 Pedro Markun <pe...@esfera.mobi>

precisamos testar um pouco mais...

e ainda faltam três departamentos. mas já da pra brincar.

A partir do que já estava lá, já deu pra fazer umas "brincadeiras"... mas ainda não está consistente... precisa ser feita uma conversão mais refinada do que a que fiz agora... quando terminar de processar todas as secretarias, por favor, dê(em) um alô! Estou ansioso para compartilhar aqui alguns indicadores que só serão possíveis de serem vistos com todos esses PDFs convertidos num único CSV... :)

Markun, o erro 404 aconteceu porque o Dropbox ainda estava subindo o ZIP, mal aí!

Segue uma versão ainda tosca e inacabada:

Valeu!
Abraços!

Leandro Salvador

unread,
Apr 4, 2011, 6:28:27 PM4/4/11
to thac...@googlegroups.com
Markun e Luis, em vossas opiniões os scrapers que vocês fizeram já estão estáveis? Dá pra jogar no 220V de boa? :)

Se sim, perdoem-me pela pergunta newbie mas... como é que funciona? :( Tipo... como é que se coloca um PDF na entrada e faz pra sair um CSV dele?

Newbie rulez, eu sei! :D
Valeu! Valeu! E Valeu!
Abraços!

Pedro Markun

unread,
Apr 4, 2011, 7:05:40 PM4/4/11
to thac...@googlegroups.com, Leandro Salvador
Leandro,

na verdade o sistema esta montando uma base só com todos os pdfs.

O lance é tentar usar, pq vai ser mais fácil de detectar inconsistência...

O meu código gerou 50k registros, mas faltam ainda 3 pdfs.


que são muito grandes e dão timeout no scraperwiki (vou ter que rodar localmente)


esta com um cabeçalho estranho e vou ter que mudar a regra do jogo pra ele.

mas em teoria, como banco gerado vai ficar na mesma estrutura, você pode usar o resultado pra gerar a visualização e depois a gente só completa a tabela e re-roda a visualização, não?

abs,
Pedro Markun

2011/4/4 Leandro Salvador <leandro...@gmail.com>
Abraços!

--

Luis Leao

unread,
Apr 4, 2011, 7:30:00 PM4/4/11
to thac...@googlegroups.com, Leandro Salvador
Oi Leandro,

encontrei um problema na horas de scrapear os arquivos. Ainda não consegui um tempo para encontrar uma solução e pelo que vi do Markun isso já estava resolvido.

Sobre o funcionamento da leitura do pdf pelo scraperwiki: ele transforma o pdf em um arquivo xml. Daí você precisa apenas percorrer o xml e identificar o padrão utilizado no documento para carregar os dados. Eu usei o exemplo fornecido pelo próprio scraperwiki.

Outro link bacana: http://scraperwikiviews.com/run/pdf-to-html-preview-1/, nele você informa o link do arquivo pdf que deseja scrapear e exibe uma interface para clicar e ver os parâmetros de cada texto para você usar no seu código.


[]'s
Luís



2011/4/4 Leandro Salvador <leandro...@gmail.com>
Abraços!

--

Diego Rabatone

unread,
Apr 4, 2011, 7:38:40 PM4/4/11
to thac...@googlegroups.com, Luis Leao, Leandro Salvador
Leandro, só destacando que o scraperwiki tem API de consulta externa, ou seja, você pode montar uma aplicação que consulta a base que está no sistema deles!!



2011/4/4 Luis Leao <luis...@gmail.com>

Vítor Baptista

unread,
Apr 4, 2011, 7:52:59 PM4/4/11
to thac...@googlegroups.com
Pedro,

Nunca usei a raspagem de PDF do ScraperWiki, mas não seria mais simples cortar um PDF grande em vários pedaços pequenos e analisá-los individualmente, ao invés de rodar o sistema localmente não?

Abraços,

2011/4/4 Pedro Markun <pe...@esfera.mobi>



--
Vítor Baptista

Diego Rabatone

unread,
Apr 4, 2011, 7:57:24 PM4/4/11
to thac...@googlegroups.com, Vítor Baptista
Vitor, acho que o problema é que "junto ou separado" a quantidade de informações é maior do que a que o Scraperwiki está "disposto" a aceitar....

--------------------------------
Diego Rabatone Oliveira
http://blog.diraol.eng.br
diraol(arroba)diraol(ponto)eng(ponto)br
Identica: (@diraol) http://identi.ca/diraol
Twitter: @diraol



2011/4/4 Vítor Baptista <lis...@vitorbaptista.com>

Vítor Baptista

unread,
Apr 4, 2011, 7:58:09 PM4/4/11
to Diego Rabatone, thac...@googlegroups.com
Ah tá... esquece, então :P

2011/4/4 Diego Rabatone <dir...@diraol.eng.br>



--
Vítor Baptista

capi etheriel

unread,
Apr 5, 2011, 8:42:39 AM4/5/11
to thac...@googlegroups.com
galere, tem como eu instalar essa lib de pdftoxml no meu pc? eu vi aqui que é uma ferramenta do scraperwiki (vem com o import scraperwiki) mas eu não sei como instalar o modulo do scraperwiki -- e nem quero, porque ele provavelmente lida com dbs semelhantes ao do scraperwiki, e eu só quero a parte do pdftoxml

claro que, via das dúvidas, eu posso instalar uma copia local do scraperwiki na minha maquina. mas eu acho que isso é trabalho demais pra uma coisa tão simples, então eu prefiro consultar os sábios da comunidade ;)

Diego Rabatone

unread,
Apr 5, 2011, 12:45:42 PM4/5/11
to thac...@googlegroups.com, capi etheriel
Capi, acho que isso pode ajudar:

https://launchpad.net/pdf2xml

Outras duas ferramentas que podem vir a ser uteis (e que vem por padrão no ubuntu) são a "pdftotext" e "pdftohtml"

=)

Abs

2011/4/5 capi etheriel <barra...@gmail.com>
galere, tem como eu instalar essa lib de pdftoxml no meu pc? eu vi aqui que é uma ferramenta do scraperwiki (vem com o import scraperwiki) mas eu não sei como instalar o modulo do scraperwiki -- e nem quero, porque ele provavelmente lida com dbs semelhantes ao do scraperwiki, e eu só quero a parte do pdftoxml

claro que, via das dúvidas, eu posso instalar uma copia local do scraperwiki na minha maquina. mas eu acho que isso é trabalho demais pra uma coisa tão simples, então eu prefiro consultar os sábios da comunidade ;)

--

Diego Rabatone

unread,
Apr 5, 2011, 12:49:52 PM4/5/11
to thac...@googlegroups.com, capi etheriel
Ou esse...

http://sourceforge.net/projects/pdf2xml/


2011/4/5 Diego Rabatone <dir...@diraol.eng.br>
Reply all
Reply to author
Forward
0 new messages