0
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.

...
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...
E aí investem em...
www.cetsp.com.br
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
                    ...
Fornecedor                                 Processador

                              Ei, 300 gramas de
                  ...
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
                  mo...
Fornecedor                                    Processador

                                     Ei, um
                   ...
Maturidade institucional




www.showusabetterway.co.uk
NYT APIs
Congressional Data
                                     NYT APIs
The Congress API returns the following types of data:
 • ...
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/
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
...
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($conten...
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
                          +9o4x3M9qjM7ys...
Empresa estatal. Serviço público.


Dados de interesse público.


Sem problemas de privacidade.


HACKING LIBERADO!!!
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/sc...
Libertem
os dados!!!
Obrigado
Contato: @pedrovalente
Extraindo dados públicos “na marra”
Extraindo dados públicos “na marra”
Extraindo dados públicos “na marra”
Upcoming SlideShare
Loading in...5
×

Extraindo dados públicos “na marra”

10,322

Published on

Apresentação feita no HackDay 2010, em 20 de março

Published in: Technology, News & Politics
2 Comments
32 Likes
Statistics
Notes
No Downloads
Views
Total Views
10,322
On Slideshare
0
From Embeds
0
Number of Embeds
9
Actions
Shares
0
Downloads
177
Comments
2
Likes
32
Embeds 0
No embeds

No notes for slide

Transcript of "Extraindo dados públicos “na marra”"

  1. 1. Extraindo dados públicos “na marra” Pedro Valente @pedrovalente
  2. 2. Por quê? É um dever do cidadão fiscalizar o poder
  3. 3. Por quê? Tem um monte de picaretas se aproveitando do seu dinheiro
  4. 4. Por quê? São dados que por lei ou por bom senso deveriam estar disponíveis
  5. 5. Por quê? Não adianta tentar esconder, a gente dá um jeito
  6. 6. Dados públicos?
  7. 7. Dados do governo
  8. 8. Dados de interesse público
  9. 9. Interesse público Jornalismo
  10. 10. Jornalismo + Desenvolvimento de software
  11. 11. http://www.flickr.com/photos/tracy_collins/2237061185/ Transparência
  12. 12. Está na moda
  13. 13. Está na moda e ganha Pulitzer
  14. 14. Está na moda e ganha Pulitzer http://politifact.org
  15. 15. Está na moda e ganha Pulitzer http://politifact.org
  16. 16. "Build something or STFU" Matt Waite - Politifact
  17. 17. www.portaltransparencia.gov.br
  18. 18. Como transformar esse mundo de dados em algo relevante?
  19. 19. http://projects.nytimes.com/crime/homicides/map?hp
  20. 20. Crie aplicações interativas em cima deles
  21. 21. Aplicação Crie aplicações interativas em cima deles
  22. 22. Aplicação Crie aplicações interativas em cima deles Dados
  23. 23. Processador Aplicação Fornecedor Dados
  24. 24. Processador Aplicação API Fornecedor Dados
  25. 25. API Application Programming Interface
  26. 26. Cada fornecedor armazena de um jeito A API serve para padronizar a saída
  27. 27. 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ê.
  28. 28. Dois papéis
  29. 29. 1. Fornecedor Dados brutos Grandes volumes Exclusividade
  30. 30. http://www.flickr.com/photos/streetlife/2309136566/
  31. 31. CET-SP http://www.flickr.com/photos/streetlife/2309136566/
  32. 32. 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!
  33. 33. E aí investem em...
  34. 34. www.cetsp.com.br
  35. 35. Prioridade?
  36. 36. Pouca grana Pepinos gigantes Precisa foco no que ninguém mais tem
  37. 37. 2. Processador Recombina, reordena, filtra e segmenta Identifica padrões e revela tendências Expõe os resultados
  38. 38. EveryBlock.com
  39. 39. NYTimes Text
  40. 40. NYTimes Text http://prototype.nytimes.com/represent/
  41. 41. EveryBlock.com Dados de fornecedores diversos Micro-relevância É jornalismo? É software? "Who cares?"
  42. 42. Batia de porta em porta implorando por XML
  43. 43. Fornecedor Processador
  44. 44. Fornecedor Processador Aplicação
  45. 45. Fornecedor Processador Aplicação Dados
  46. 46. Fornecedor Processador Aplicação Dados API
  47. 47. Fornecedor Processador Ei, 300 gramas de mortadela, por favor Aplicação Dados API
  48. 48. Fornecedor Processador Ei, 300 gramas de mortadela, por favor Aplicação Dados API Aqui está, senhor, tenha um bom dia
  49. 49. Fornecedor Processador
  50. 50. Fornecedor Processador Aplicação
  51. 51. Fornecedor Processador Aplicação Aplicação
  52. 52. Fornecedor Processador Aplicação API Aplicação
  53. 53. Fornecedor Processador Ei, um sanduíche de mortadela, por Aplicação API favor Aplicação
  54. 54. Fornecedor Processador Ei, um sanduíche de mortadela, por Aplicação API favor Aplicação Aqui está, senhor, tenha um bom dia
  55. 55. Maturidade institucional www.showusabetterway.co.uk
  56. 56. NYT APIs
  57. 57. 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
  58. 58. The Guardian www.guardian.co.uk/open-platform/
  59. 59. The Guardian www.guardian.co.uk/data-store www.guardian.co.uk/data-store
  60. 60. The Guardian http://mps-expenses.guardian.co.uk/
  61. 61. Voltando ao Brasil...
  62. 62. Se o fornecedor não colabora, fazemos justiça com as próprias mãos
  63. 63. Se o fornecedor não colabora, fazemos justiça com as próprias mãos
  64. 64. Scraping = raspagem Pegar na marra o que não é liberado por API Robozinhos, crawlers e dumps Mudança de mentalidade
  65. 65. 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
  66. 66. Uma ajudinha:YQL http://developer.yahoo.com/yql/console
  67. 67. 2 desafios Datasets & Consultas online
  68. 68. Datasets
  69. 69. Massas de dados guardadas em algum banco
  70. 70. IBGE TSE Anatel
  71. 71. http://github.com/legisdados/legisdados
  72. 72. YQL + CSV YQL + XML
  73. 73. CSV to webservice http://isithackday.com/csv-to-webservice/
  74. 74. <?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']; } } ?>
  75. 75. Consultas online
  76. 76. Infraero
  77. 77. Infraero
  78. 78. Infraero
  79. 79. Infraero
  80. 80. Infraero
  81. 81. Infraero poderia ser assim:
  82. 82. Infraero poderia ser assim: www.infraero.gov.br/voos/status/03101
  83. 83. Infraero poderia ser assim: www.infraero.gov.br/voos/status/03101 <status> confirmado </status>
  84. 84. Mas veja o que esses filhas da mãe fazem pra nos impedir de usar os dados deles
  85. 85. 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=
  86. 86. Empresa estatal. Serviço público. Dados de interesse público. Sem problemas de privacidade. HACKING LIBERADO!!!
  87. 87. http://anp.gov.br/preco
  88. 88. http://www.precodoscombustiveis.com.br/
  89. 89. YQL + HTML YQL Open Tables http://datatables.org
  90. 90. 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
  91. 91. Libertem os dados!!!
  92. 92. Obrigado Contato: @pedrovalente
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×