Extraindo dados públicos “na marra”
Pedro Valente
@pedrovalente
Por quê?
É um dever do cidadão fiscalizar o poder
Por quê?
Tem um monte de picaretas se aproveitando do seu dinheiro
Por quê?
São dados que por lei ou por bom senso deveriam estar disponíveis
Por quê?
Não adianta tentar esconder,a gente dá um jeito
Dados públicos?
Dados do governo
Dados de interesse público
Interesse público
Jornalismo
Jornalismo+
Desenvolvimento de software
Transparência
http://www.flickr.com/photos/tracy_collins/2237061185/
Está na moda
Está na modae ganha Pulitzer
Está na moda
http://politifact.org
e ganha Pulitzer
Está na moda
http://politifact.org
e ganha Pulitzer
"Build something or STFU"Matt Waite - Politifact
www.portaltransparencia.gov.br
Como transformar esse mundo de dados em
algo relevante?
http://projects.nytimes.com/crime/homicides/map?hp
Crie aplicações interativas em cima
deles
Crie aplicações interativas em cima
deles
Aplicação
Crie aplicações interativas em cima
deles
Aplicação
Dados
Aplicação
Dados
Processador
Fornecedor
Aplicação
Dados
Processador
Fornecedor
API
APIApplication Programming Interface
Cada fornecedor armazena de um jeito
A API serve para padronizar a saída
API é o balcão da padaria
Você pede 300 gramas de mortadelae a atendente te entrega. Leva também 4 pãezinhos.
Te vira. Quem faz o sanduíche é você.
Dois papéis
1. Fornecedor
Dados brutos
Grandes volumes
Exclusividade
http://www.flickr.com/photos/streetlife/2309136566/
CET-SP
http://www.flickr.com/photos/streetlife/2309136566/
Dados da CET
Km de congestionamento
Pontos de alagamento
Ocorrências de trânsito
Estrutura de monitoramento exclusiva
Além de monitorar, também precisa RESOLVER o trânsito!
E aí investem em...
Prioridade?
Pouca grana
Pepinos gigantes
Precisa foco no que ninguém mais tem
2. Processador
Recombina, reordena, filtra e segmenta
Identifica padrões e revela tendências
Expõe os resultados
EveryBlock.com
NYTimes
Text
NYTimes
Text
http://prototype.nytimes.com/represent/
EveryBlock.com
Dados de fornecedores diversos
Micro-relevância
É jornalismo? É software? "Who cares?"
Batia de porta em porta implorando por XML
Fornecedor Processador
Fornecedor Processador
Aplicação
Fornecedor Processador
Dados
Aplicação
API
Fornecedor Processador
Dados
Aplicação
API
Fornecedor Processador
Dados
Aplicação
Ei, 300 gramas de mortadela, por
favor
API
Fornecedor Processador
Dados
Aplicação
Ei, 300 gramas de mortadela, por
favor
Aqui está, senhor, tenha um bom dia
Fornecedor Processador
Fornecedor Processador
Aplicação
Aplicação
Fornecedor Processador
Aplicação
AplicaçãoAPI
Fornecedor Processador
Aplicação
AplicaçãoAPI
Fornecedor Processador
Aplicação
Ei, um sanduíche de
mortadela, por favor
AplicaçãoAPI
Aqui está, senhor, tenha um bom dia
Fornecedor Processador
Aplicação
Ei, um sanduíche de
mortadela, por favor
NYT APIs
NYT APIsCongressional Data
The Congress API returns the following types of data:
• Roll-call vote data: Only roll-call votes (not voice votes or division votes) are tracked by official Congressional data sources. Along with basic vote data, the Times API returns additional information that is less readily available, such as party totals. For details, see Responses. For general information about roll-call votes, see the THOMAS site.
• Member data: Along with general biographical information for current and past members of Congress, the API returns data about members' Congressional roles. Role data includes the Congress number and chamber, as well as the member's title, state and party. A single member may have more than one role in a particular Congress (for example, the member may switch parties or move from the House to the Senate). For details, see Responses.
Data Sources
The data returned by the Congress API is compiled from the following sources:
• The official Web site of the Office of the Clerk of the U.S. House of Representatives, for vote data• The official Web site of the United States Senate, for vote data• The Biographical Directory of the United States Congress, for member biographical information• GovTrack.us, for member biographical information• MIT Professor Charles Stewart's collection of Congressional data, for role information• THOMAS (The Library of Congress), for bill data• The C-SPAN Congressional Chronicle, for floor appearances
Certain fields in the API responses (such as party totals) are calculated by The Times, based on these data sources. For details, see Responses.
http://developer.nytimes.com/docs/congress_api
The Guardian
www.guardian.co.uk/open-platform/
The Guardianwww.guardian.co.uk/data-store
www.guardian.co.uk/data-store
The Guardianhttp://mps-expenses.guardian.co.uk/
Voltando ao Brasil...
Se o fornecedor não colabora, fazemos justiça com
as próprias mãos
Se o fornecedor não colabora, fazemos justiça com
as próprias mãos
Scraping = raspagem
Pegar na marra o que não é liberado por API
Robozinhos, crawlers e dumps
Mudança de mentalidade
Uma ajudinha: YQL
• Idioma comum para conversar com diversas APIs ou fazer scraping
• Aberto para qualquer um se tornar fornecedor ou processador de dados
• Tem um console muito divertido
• http://developer.yahoo.com/yql/console
Uma ajudinha: YQL
http://developer.yahoo.com/yql/console
2 desafios
Datasets&
Consultas online
Datasets
Massas de dadosguardadas em algum
banco
IBGETSE
Anatel
http://github.com/legisdados/legisdados
YQL + CSV
YQL + XML
CSV to webservice
http://isithackday.com/csv-to-webservice/
<?php include('csvtoservice.php'); $content = csvtoservice('http://winterolympicsmedals.com/medals.csv'); if($content){
if($content['form']){ echo '<h4>Filters</h4>'; echo $content['form']; }
if($content['table']){ echo '<h4>Results</h4>'; echo $content['table']; }
}?>
Consultas online
Infraero
Infraero
Infraero
Infraero
Infraero
Infraeropoderia ser assim:
Infraeropoderia ser assim:
www.infraero.gov.br/voos/status/03101
Infraeropoderia ser assim:
www.infraero.gov.br/voos/status/03101
<status>confirmado
</status>
Mas veja o que esses filhas da mãefazem pra nos impedir de usar os
dados deles
http://www.infraero.gov.br/voos/detalhe_voo.aspx?5/Xrn1SlFmeTrR/PL3/MpnK8sgrVY9Ms+9o4x3M9qjM7ysJ8yazx5wXPsRzdou
+5fzqPSZPiXOSpCOxycPzRH6PIN4I4buChasAEzkA4yV8kHAGUAnVR/KczuGvooOuczvdlALYzVh3lcyKh+M3QrsBJBmxehWlokYlZbByajEtfYOOFlC8vGsv0I9JVs
+4MD3i1hIP1FXRc0+EyJhJBL2qiFEy6/fDinPR/mqw675W/cnhwPjcHtQEvr4NpsYdsP0f8JE0VbKeVci8KGgQ4TZJq1DE3SEjUk7lySiMtlWrZwj+pcazY
+95lEvSJOwqXbb5FLXNbv0CnrSZ/9CxURzI84m3tI1929Te6IEuJPcE=
Empresa estatal. Serviço público.
Dados de interesse público.
Sem problemas de privacidade.
HACKING LIBERADO!!!
http://www.precodoscombustiveis.com.br/
Referênciashttp://theinfo.org/
Transparência HackDayhttp://groups.google.com/group/thackday
http://delicious.com/tag/scrapinghttp://delicious.com/tag/publicdata
http://bit.ly/rwwopendata
Libertemos dados!!!
ObrigadoContato: @pedrovalente
Recommended