Extraindo dados públicos “na marra”

Pedro Valente
Pedro ValenteSr. Product Manager at Yahoo!
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
http://www.flickr.com/photos/tracy_collins/2237061185/




   Transparência
Está na moda
Está na moda
e ganha Pulitzer
Está na moda
e ganha Pulitzer
     http://politifact.org
Está na moda
e ganha Pulitzer
     http://politifact.org
"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
Aplicação




  Crie aplicações
interativas em cima
        deles
Aplicação




  Crie aplicações
interativas em cima
        deles
         Dados
Processador   Aplicação




Fornecedor     Dados
Processador   Aplicação




                          API

Fornecedor     Dados
API
Application 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 mortadela
 e 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...
www.cetsp.com.br
Extraindo dados públicos “na marra”
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



                  Aplicação
Dados
Fornecedor    Processador



                   Aplicação
Dados   API
Fornecedor                 Processador

              Ei, 300 gramas de
               mortadela, por
                     favor        Aplicação
Dados   API
Fornecedor                                 Processador

                              Ei, 300 gramas de
                               mortadela, por
                                     favor        Aplicação
Dados   API
                Aqui está,
              senhor, tenha
               um bom dia
Fornecedor   Processador
Fornecedor   Processador



Aplicação
Fornecedor   Processador



Aplicação          Aplicação
Fornecedor       Processador



Aplicação   API        Aplicação
Fornecedor                    Processador

                     Ei, um
                  sanduíche de
                  mortadela, por
Aplicação   API       favor         Aplicação
Fornecedor                                    Processador

                                     Ei, um
                                  sanduíche de
                                  mortadela, por
Aplicação   API                       favor         Aplicação
                    Aqui está,
                  senhor, tenha
                   um bom dia
Maturidade institucional




www.showusabetterway.co.uk
NYT APIs
Congressional Data
                                     NYT APIs
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 Guardian
www.guardian.co.uk/data-store

www.guardian.co.uk/data-store
The Guardian
http://mps-expenses.guardian.co.uk/
Extraindo dados públicos “na marra”
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 dados
guardadas em algum
      banco
IBGE
 TSE
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
Infraero
poderia ser assim:
Infraero
        poderia ser assim:

www.infraero.gov.br/voos/status/03101
Infraero
        poderia ser assim:

www.infraero.gov.br/voos/status/03101


<status>
  confirmado
</status>
Mas veja o que esses filhas da mãe
fazem 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!!!
Extraindo dados públicos “na marra”
http://anp.gov.br/preco
http://www.precodoscombustiveis.com.br/
YQL + HTML

 YQL Open Tables
http://datatables.org
Referências
http://theinfo.org/
Transparência HackDay
http://groups.google.com/group/thackday

http://delicious.com/tag/scraping
http://delicious.com/tag/publicdata


http://bit.ly/rwwopendata
Libertem
os dados!!!
Obrigado
Contato: @pedrovalente
1 of 95

Recommended

Web APIs e dados abertos - API de Compras Governamentais by
Web APIs e dados abertos - API de Compras GovernamentaisWeb APIs e dados abertos - API de Compras Governamentais
Web APIs e dados abertos - API de Compras Governamentaisnitaibezerra
4.8K views48 slides
Api’s abertos by
Api’s abertosApi’s abertos
Api’s abertosgrupovermelho
514 views12 slides
Manual dados abertos_web by
Manual dados abertos_webManual dados abertos_web
Manual dados abertos_webJoel Lobo
659 views58 slides
I Oficina Técnica de Publicação de Dados Abertos e Transparência Ativa by
I Oficina Técnica de Publicação de Dados Abertos e Transparência AtivaI Oficina Técnica de Publicação de Dados Abertos e Transparência Ativa
I Oficina Técnica de Publicação de Dados Abertos e Transparência Ativanitaibezerra
2.2K views64 slides
Open web & Dados Abertos by
Open web & Dados AbertosOpen web & Dados Abertos
Open web & Dados AbertosYasodara Cordova
6.5K views18 slides
Projeto Piloto de Web Semântica com os Dados do Tribunal de Contas by
Projeto Piloto de Web Semântica com os Dados do Tribunal de ContasProjeto Piloto de Web Semântica com os Dados do Tribunal de Contas
Projeto Piloto de Web Semântica com os Dados do Tribunal de ContasinovaDay .
437 views24 slides

More Related Content

Similar to Extraindo dados públicos “na marra”

Abaas - Advanced Beer-as-a-Service by
Abaas - Advanced Beer-as-a-ServiceAbaas - Advanced Beer-as-a-Service
Abaas - Advanced Beer-as-a-ServiceAmazon Web Services LATAM
590 views29 slides
Analisando Dados de Streaming em Tempo Real com Amazon Kinesis - BDA303 - Sa... by
Analisando Dados de Streaming em Tempo Real com Amazon Kinesis -  BDA303 - Sa...Analisando Dados de Streaming em Tempo Real com Amazon Kinesis -  BDA303 - Sa...
Analisando Dados de Streaming em Tempo Real com Amazon Kinesis - BDA303 - Sa...Amazon Web Services
895 views33 slides
Os 7 Pecados Capitais na exposição de APIs RESTful by
Os 7 Pecados Capitais na exposição de APIs RESTfulOs 7 Pecados Capitais na exposição de APIs RESTful
Os 7 Pecados Capitais na exposição de APIs RESTfulKleber Bacili
2.7K views71 slides
APIs gerenciadas de ponta a ponta by
APIs gerenciadas de ponta a pontaAPIs gerenciadas de ponta a ponta
APIs gerenciadas de ponta a pontaFábio Rosato
686 views97 slides
APIs gerenciadas de ponta a ponta by
APIs gerenciadas de ponta a pontaAPIs gerenciadas de ponta a ponta
APIs gerenciadas de ponta a pontaJosé Vahl
1.2K views97 slides
Public API - Você está preparado para um mundo interconectado by
Public API - Você está preparado para um mundo interconectadoPublic API - Você está preparado para um mundo interconectado
Public API - Você está preparado para um mundo interconectadoFábio Rosato
443 views27 slides

Similar to Extraindo dados públicos “na marra”(20)

Analisando Dados de Streaming em Tempo Real com Amazon Kinesis - BDA303 - Sa... by Amazon Web Services
Analisando Dados de Streaming em Tempo Real com Amazon Kinesis -  BDA303 - Sa...Analisando Dados de Streaming em Tempo Real com Amazon Kinesis -  BDA303 - Sa...
Analisando Dados de Streaming em Tempo Real com Amazon Kinesis - BDA303 - Sa...
Os 7 Pecados Capitais na exposição de APIs RESTful by Kleber Bacili
Os 7 Pecados Capitais na exposição de APIs RESTfulOs 7 Pecados Capitais na exposição de APIs RESTful
Os 7 Pecados Capitais na exposição de APIs RESTful
Kleber Bacili2.7K views
APIs gerenciadas de ponta a ponta by Fábio Rosato
APIs gerenciadas de ponta a pontaAPIs gerenciadas de ponta a ponta
APIs gerenciadas de ponta a ponta
Fábio Rosato686 views
APIs gerenciadas de ponta a ponta by José Vahl
APIs gerenciadas de ponta a pontaAPIs gerenciadas de ponta a ponta
APIs gerenciadas de ponta a ponta
José Vahl1.2K views
Public API - Você está preparado para um mundo interconectado by Fábio Rosato
Public API - Você está preparado para um mundo interconectadoPublic API - Você está preparado para um mundo interconectado
Public API - Você está preparado para um mundo interconectado
Fábio Rosato443 views
Processamento Dados em Escala com Serverless: Um Estudo de Caso da Amazon.com... by Amazon Web Services
Processamento Dados em Escala com Serverless: Um Estudo de Caso da Amazon.com...Processamento Dados em Escala com Serverless: Um Estudo de Caso da Amazon.com...
Processamento Dados em Escala com Serverless: Um Estudo de Caso da Amazon.com...
Performing real-time ETL into data lakes - ADB202 - São Paulo AWS Summit by Amazon Web Services
Performing real-time ETL into data lakes - ADB202 - São Paulo AWS SummitPerforming real-time ETL into data lakes - ADB202 - São Paulo AWS Summit
Performing real-time ETL into data lakes - ADB202 - São Paulo AWS Summit
Amazon Web Services1.1K views
Visão Geral sobre o Application Insights by André Dias
Visão Geral sobre o Application InsightsVisão Geral sobre o Application Insights
Visão Geral sobre o Application Insights
André Dias397 views
DevDay 2017 - Belo Horizonte - Application Insights by André Dias
DevDay 2017 - Belo Horizonte - Application InsightsDevDay 2017 - Belo Horizonte - Application Insights
DevDay 2017 - Belo Horizonte - Application Insights
André Dias151 views
Como implantar transformações organizacionais a partir de uma plataforma de B... by EloGroup
Como implantar transformações organizacionais a partir de uma plataforma de B...Como implantar transformações organizacionais a partir de uma plataforma de B...
Como implantar transformações organizacionais a partir de uma plataforma de B...
EloGroup497 views
Café com bpm recife palestra automação de processos - airton caetano by EloGroup
Café com bpm recife   palestra automação de processos - airton caetanoCafé com bpm recife   palestra automação de processos - airton caetano
Café com bpm recife palestra automação de processos - airton caetano
EloGroup563 views
Industry 4.0- Managing the protocol zoo - SVC204 - São Paulo AWS Summit by Amazon Web Services
Industry 4.0- Managing the protocol zoo - SVC204 - São Paulo AWS SummitIndustry 4.0- Managing the protocol zoo - SVC204 - São Paulo AWS Summit
Industry 4.0- Managing the protocol zoo - SVC204 - São Paulo AWS Summit

More from Pedro Valente

Extraindo dados públicos na marra com Python by
Extraindo dados públicos na marra com PythonExtraindo dados públicos na marra com Python
Extraindo dados públicos na marra com PythonPedro Valente
5K views94 slides
Product Owner na prática by
Product Owner na práticaProduct Owner na prática
Product Owner na práticaPedro Valente
1K views60 slides
“SELECT * FROM internet;” como usar o YQL com Yahoo! Meme e outros serviços by
“SELECT * FROM internet;” como usar o YQL com Yahoo! Meme e outros serviços“SELECT * FROM internet;” como usar o YQL com Yahoo! Meme e outros serviços
“SELECT * FROM internet;” como usar o YQL com Yahoo! Meme e outros serviçosPedro Valente
5K views145 slides
YQL: Select * from internet - Campus Party 2010 by
YQL: Select * from internet - Campus Party 2010YQL: Select * from internet - Campus Party 2010
YQL: Select * from internet - Campus Party 2010Pedro Valente
2.4K views135 slides
Novas tecnologias a serviço do viajante - Tecnoturis 2010 by
Novas tecnologias a serviço do viajante - Tecnoturis 2010Novas tecnologias a serviço do viajante - Tecnoturis 2010
Novas tecnologias a serviço do viajante - Tecnoturis 2010Pedro Valente
552 views97 slides
De jornais impressos a plataformas online de conteúdo (APIs) by
De jornais impressos a plataformas online de conteúdo (APIs)De jornais impressos a plataformas online de conteúdo (APIs)
De jornais impressos a plataformas online de conteúdo (APIs)Pedro Valente
935 views63 slides

More from Pedro Valente(7)

Extraindo dados públicos na marra com Python by Pedro Valente
Extraindo dados públicos na marra com PythonExtraindo dados públicos na marra com Python
Extraindo dados públicos na marra com Python
Pedro Valente5K views
“SELECT * FROM internet;” como usar o YQL com Yahoo! Meme e outros serviços by Pedro Valente
“SELECT * FROM internet;” como usar o YQL com Yahoo! Meme e outros serviços“SELECT * FROM internet;” como usar o YQL com Yahoo! Meme e outros serviços
“SELECT * FROM internet;” como usar o YQL com Yahoo! Meme e outros serviços
Pedro Valente5K views
YQL: Select * from internet - Campus Party 2010 by Pedro Valente
YQL: Select * from internet - Campus Party 2010YQL: Select * from internet - Campus Party 2010
YQL: Select * from internet - Campus Party 2010
Pedro Valente2.4K views
Novas tecnologias a serviço do viajante - Tecnoturis 2010 by Pedro Valente
Novas tecnologias a serviço do viajante - Tecnoturis 2010Novas tecnologias a serviço do viajante - Tecnoturis 2010
Novas tecnologias a serviço do viajante - Tecnoturis 2010
Pedro Valente552 views
De jornais impressos a plataformas online de conteúdo (APIs) by Pedro Valente
De jornais impressos a plataformas online de conteúdo (APIs)De jornais impressos a plataformas online de conteúdo (APIs)
De jornais impressos a plataformas online de conteúdo (APIs)
Pedro Valente935 views
Introdução à Y!OS e suas APIs by Pedro Valente
Introdução à Y!OS e suas APIsIntrodução à Y!OS e suas APIs
Introdução à Y!OS e suas APIs
Pedro Valente426 views

Recently uploaded

As ferramentas gerenciais da qualidade são estabelecidas para auxiliar a empr... by
As ferramentas gerenciais da qualidade são estabelecidas para auxiliar a empr...As ferramentas gerenciais da qualidade são estabelecidas para auxiliar a empr...
As ferramentas gerenciais da qualidade são estabelecidas para auxiliar a empr...josecarlos413721
12 views2 slides
Competências para extrair inovação na tecnologia! by
Competências para extrair inovação na tecnologia!Competências para extrair inovação na tecnologia!
Competências para extrair inovação na tecnologia!AnneliseGripp1
9 views11 slides
Competências para extrair inovação na tecnologia! by
Competências para extrair inovação na tecnologia!Competências para extrair inovação na tecnologia!
Competências para extrair inovação na tecnologia!Annelise Gripp
15 views11 slides
SciELO: O Guia. by
SciELO: O Guia.SciELO: O Guia.
SciELO: O Guia.susieconceicao118
42 views8 slides
Uma exposição em um centro de convenção precisa contabilizar os visitantes po... by
Uma exposição em um centro de convenção precisa contabilizar os visitantes po...Uma exposição em um centro de convenção precisa contabilizar os visitantes po...
Uma exposição em um centro de convenção precisa contabilizar os visitantes po...josecarlos413721
48 views3 slides
O setor de PCP faz a gestão dos estoques de produtos acabados, matérias-prima... by
O setor de PCP faz a gestão dos estoques de produtos acabados, matérias-prima...O setor de PCP faz a gestão dos estoques de produtos acabados, matérias-prima...
O setor de PCP faz a gestão dos estoques de produtos acabados, matérias-prima...josecarlos413721
7 views4 slides

Recently uploaded(10)

As ferramentas gerenciais da qualidade são estabelecidas para auxiliar a empr... by josecarlos413721
As ferramentas gerenciais da qualidade são estabelecidas para auxiliar a empr...As ferramentas gerenciais da qualidade são estabelecidas para auxiliar a empr...
As ferramentas gerenciais da qualidade são estabelecidas para auxiliar a empr...
josecarlos41372112 views
Competências para extrair inovação na tecnologia! by AnneliseGripp1
Competências para extrair inovação na tecnologia!Competências para extrair inovação na tecnologia!
Competências para extrair inovação na tecnologia!
AnneliseGripp19 views
Competências para extrair inovação na tecnologia! by Annelise Gripp
Competências para extrair inovação na tecnologia!Competências para extrair inovação na tecnologia!
Competências para extrair inovação na tecnologia!
Annelise Gripp15 views
Uma exposição em um centro de convenção precisa contabilizar os visitantes po... by josecarlos413721
Uma exposição em um centro de convenção precisa contabilizar os visitantes po...Uma exposição em um centro de convenção precisa contabilizar os visitantes po...
Uma exposição em um centro de convenção precisa contabilizar os visitantes po...
josecarlos41372148 views
O setor de PCP faz a gestão dos estoques de produtos acabados, matérias-prima... by josecarlos413721
O setor de PCP faz a gestão dos estoques de produtos acabados, matérias-prima...O setor de PCP faz a gestão dos estoques de produtos acabados, matérias-prima...
O setor de PCP faz a gestão dos estoques de produtos acabados, matérias-prima...
Um edifício é composto tanto de elementos estruturais — que são dimensionados... by josecarlos413721
Um edifício é composto tanto de elementos estruturais — que são dimensionados...Um edifício é composto tanto de elementos estruturais — que são dimensionados...
Um edifício é composto tanto de elementos estruturais — que são dimensionados...
josecarlos41372114 views
A documentação de um programa é fundamental, independentemente da linguagem d... by josecarlos413721
A documentação de um programa é fundamental, independentemente da linguagem d...A documentação de um programa é fundamental, independentemente da linguagem d...
A documentação de um programa é fundamental, independentemente da linguagem d...
josecarlos41372112 views

Extraindo dados públicos “na marra”