Aquisição de dados para iniciantes

Por Lylla Younes

https://cdn.ttc.io/i/fit/1000/0/sm/0/plain/kit.exposingtheinvisible.org/il/data-acquisition-cik-illustration.pngIlustração de aquisição de dados


Resumindo: Encontrar e coletar informações é essencial para qualquer investigação, mas nem todos os conjuntos de dados são criados iguais. Esta introdução inclui descrições de tipos de arquivo comuns, métodos para coleta de dados e um guia prático sobre como converter seus dados em um formato mais facilmente analisado por programas de computador.


Por favor note que a maioria dos hiperlinks apontam para sites e recursos em inglês.

Depois de encontrar informações pertinentes à sua investigação, como você o transforma em um formulário legível por máquina analisável? O que são as diferentes formas e tipos de arquivo que os dados podem ter?

Neste guia introdutório, discutiremos os fundamentos dos arquivos de dados e considere diferentes métodos de aquisição de dados usando ferramentas de código aberto e Microsoft Excel.

A aquisição de dados é o processo pelo qual os pesquisadores encontram e reúnem informações. Em muitos casos, os dados não estão disponíveis de forma facilmente baixável ou formato analisável. Podem estar espalhados por centenas arquivos PDF ou localizados em uma tabela de dados em uma página da Web sem a opção de baixar (download). Em alguns casos, os dados não existem em nenhum lugar e o pesquisador deve criar seu próprio conjunto de dados.

Exemplos destacando a importância da aquisição de dados em trabalho investigativo não faltam. Tomemos, por exemplo, os dados por trás da base de dados ProPublica sobre padres nos EUA que foram acusados de má conduta sexual. Os jornalistas da ProPublica tiveram que extrair listas de padres de centenas de arquivos PDF em um banco de dados central e pesquisável. Ou banco de dados interativo do The Guardian, The Counted , que documentou todos os assassinatos por policiais nos EUA em 2015 e 2016. Pessoas no The Guardian adquiriram e agregaram as informações ao vasculhar minuciosamente recortes de notícias locais, entre outros métodos. Ou pegue o Ad.watch, um projeto em andamento onde um artista e um pesquisador passaram meses coletando dados de anúncios políticos no Facebook, Snapchat, Instagram etc. para mostrar até que ponto os atores políticos investem na segmentação de eleitores por meio do plataformas de mídia social (veja mais sobre sua metodologia em neste guia do Kit ETI.)

Tipos de arquivo e formatos legíveis por máquina

Nem todos os conjuntos de dados são criados iguais. A primeira coisa a considerar se voc$1 $2eseja começar a analisar um conjunto de dados é se o formato que os dados estão disponíveis permite a análise baseada em computador ou não.

Em muitos casos, os investigadores vão querer extrair dados de um site ou documento em “formato legível por máquina” ou uma forma estruturada que podem ser processada por um computador. Um arquivo de texto com uma confusão de palavras e oonsiderado não estruturado. Você não pode abri-lo no Microsoft Excel e encontrar suas informações exibidas em linhas e colunas organizadas. Geralmente, todos os dados que você deseja analisar usando um programa de computador ou software deve ser legível por máquina.

Arquivos de Dados Delimitados

Um dos formatos legíveis por máquina mais comuns é o CSV, afbreviação de {{TODO: search/replace}}“valores separados por vírgula”. Um arquivo CSV é formatado da maneira que soa: cada linha no arquivo é uma linha de dados, e as informações em cada linha de dados são separadas por vírgulas. A vírgula, neste caso, é chamada de «delimitador», um caractere que marca o início ou o fim de uma unidade de dados. Enquanto vírgulas são talvez os delimitadores mais comuns que você encontrará em data arquivos, você pode encontrar outros caracteres também como ponto-e-vírgula e outros. Por exemplo, um arquivo TSV , abreviação de “valores separados por tabulação”, cada unidade de dadosé em uma linha é separada por uma tabulação. Arquivos delimitados são úteis porque são muito fáceis de ler, escrever e manipular em software e linguagens de programação.

Como você abre um arquivo delimitado?

Arquivos com a extensão “.csv” ou “.tsv” indicam o uso de um delimitador. Eles também podem ter a extensão de um arquivo de texto (“.txt”), ou nenhuma extensão. Vamos checar um exemplo semelhante ao que você pode encontrar ao tentar baixar informações disponíveis publicamente.

https://cdn.ttc.io/i/fit/800/0/sm/0/plain/kit.exposingtheinvisible.org/data-acquisition/csv_example.pngexemplo csv

https://cdn.ttc.io/i/fit/800/0/sm/0/plain/kit.exposingtheinvisible.org/data-acquisition/tsv_example.pngexemplo tsv Exemplo: dados em formato separado por vírgula vs. formato separado por tabulação.

Digamos que você esteja investigando a qualidade da água em uma área do Arizona, onde uma planta industrial recentemente derramou uma perigosa quantidade de resíduos químicos. Seu objetivo é determinar se a água potável da comunidade próxima foi comprometida.

Por meio de sua pesquisa, você encontra o Serviço Geológico dos Estados Unidos (USGS, United States Geographic Service), uma organização de pesquisa governamental que coleta grandes quantidades de dados sobre o meio ambiente. Comece baixando esta amostra de dados de qualidade da água do estado do Arizona. Esses dados foram extraídos diretamente de portal de dados do USGS.

Depois de baixar o arquivo, abra-o no editor de texto de sua escolha - eu uso Sublime Text.

``
> **Nota**:
>
> [Sublime Text](https://www.sublimetext.com/3) é um dos editores de texto de código aberto mais populares
> porque tem destaque de texto para muitas linguagens de programação
> diferentes. Isso significa que ele colore certas partes do código de maneira diferente
> para indicar a sintaxe. Ele também possui muitos recursos personalizáveis (o que significa que você pode adaptá-los às suas necessidades) e
> opções de plug-ins. Eu recomendo!

Você notará que o arquivo não tem extensão. Mas um pouco de a rolagem deixa claro que o arquivo é delimitado por _**[tabs](https://en.wikipedia.org/wiki/Tab_key)**_. Agora isso você sabe o tipo de delimitador, pode abrir o arquivo no Microsoft Excel, Planilhas Google, Libre Office, Open Office e outros.

```cik-note

Nota:

Para este guia, usaremos o Microsoft Excel e o Planilhas Google para abrir arquivos delimitados e analisar dados. No entanto, você encontrará semelhantes funcionalidade em software como Libre Office e Apache Open Office. Isto é bom ter em mente que, embora o Planilhas Google seja muito semelhante ao Microsoft Excel, ele depende de um navegador e, portanto, tem certas limitações. Por exemplo, grandes quantidades de dados podem ser lentas e difícil de administrar. Um arquivo com um milhão de linhas de dados pode fazer seu navegador travar. Dito isso, uma vez que você entenda os conceitos de alto nível deste guia, você não deve ter muita dificuldade em aplicá-los em um programa diferente.

Primeiro adicione a extensão “.txt” ao arquivo, para que o Excel saiba qus a um tipo de arquivo que ele pode ler. Você também notará que mais ou menos as a 75 primeiras linhas do arquivo são apenas notas e não dados analisáveis. s ama boa ideia copiar e colar essas linhas em um arquivo de texto diferente para referência e excluí-los do arquivo original.

Abra uma pasta de trabalho nova no Excel e clique em Arquivo > Importar. Selecione “Arquivo de Texto” e clique em Importar.

https://cdn.ttc.io/i/fit/800/0/sm/0/plain/kit.exposingtheinvisible.org/data-acquisition/import_1.pngImportar 1 Captura de tela de Lylla Younes

Selecione o arquivo que você baixou (só será selecionável depois que você adicionar a extensão apropriada).

https://cdn.ttc.io/i/fit/800/0/sm/0/plain/kit.exposingtheinvisible.org/data-acquisition/import_2.pngImportar 2

https://cdn.ttc.io/i/fit/800/0/sm/0/plain/kit.exposingtheinvisible.org/data-acquisition/import_3.pngImportar 3

https://cdn.ttc.io/i/fit/800/0/sm/0/plain/kit.exposingtheinvisible.org/data-acquisition/import_4.pngImportar 4 Capturas de tela de Lylla Younes

Selecione «Delimitador». Clique em Avançar e depois em Concluir. Aceite o padrão localização da célula para os dados. O resultado deve ser um arquivo Excel limpo com seus dados delimitados – prontos para análise.

https://cdn.ttc.io/i/fit/800/0/sm/0/plain/kit.exposingtheinvisible.org/data-acquisition/import_5.pngImportar 5

https://cdn.ttc.io/i/fit/800/0/sm/0/plain/kit.exposingtheinvisible.org/data-acquisition/import_6.pngImportar 6 Capturas de tela de Lylla Younes

Você pode repetir esse processo com qualquer tipo de arquivo de texto delimitado. Também a possível importar um arquivo separado por tabulações (.tsv) e salvá-lo como um arquivo separado por vírgula (.csv). Passe algum tempo abrindo diferentes tipos de arquivos delimitados entre seu editor de texto e o Excel para se familiarizar sua formatação.

Arquivos JSON

Outro formato de dados comum que você encontrará na web é JSON, abreviação de JavaScript Object Notation. É usado principalmente para transmitir dados entre um site e um servidor. Veremos isso em detalhes em uma seção posterior, quando extraírmos dados JSON de um site que vamos inspecionar com a requisições de rede do navegador.

Assim como os arquivos delimitados, os arquivos JSON são extremamente fáceis de usar. Eles são legível por humanos e pode ser editado em um editor de texto. Eles podem ser compactados em uma única linha, tornando-os leves.


Nota:

Aqui, “leve” refere-se ao fato de que o arquivo é mais fácil (e portanto, mais rápido) para um programa de computador ou software ler, seja pela forma como está formatado, ou simplesmente porque não é um arquivo grande.

Shapefiles

Você provavelmente encontrará um shapefile,se estiver trabalhando em uma investigação que envolva mapeamento ou qualquer tipo de análise geoespacial. Usando a definição do ESRI, um dos maiores fornecedores mundiais de sistemas de informação geográfica (GIS), um shapefile (arquivo de forma é um “formato para armazenar localização geométrica e atribuição de informações para características geográficas”. Estas características podem ser representada como pontos (geralmente coordenadas de latitude/longitude), linhas ou polígonos (áreas). Um shapefile, que tem a extensão de arquivo “.shp,” geralmente vem em uma pasta de arquivos. Isso significa que quando voco naixar um shapefile, você vai acabar baixando uma pasta, mas o arquivo naquela pasta que você deseja utilizar no software escolhido termina com a extensão “.shp.” Discutiremos em detalhes os vários métodos de abrir e manipular shapefiles,em um guia diferente do Kit.

Outros tipos de arquivo

As seções acima contêm apenas algumas das dezenas de possíveis tipos que você pode encontrar ao trabalhar com dados. Uma vez que estes são tipos de arquivos muito comuns e padrões, é fácil converter entre eles e outros tipos de arquivos.

Raspando listas e tabelas com o Planilhas Google

https://cdn.ttc.io/i/fit/1000/0/sm/0/plain/kit.exposingtheinvisible.org/il/data-acquisition-01-cik-illustration.pngilustração de aquisição de dados

Em alguns casos, os dados que nos interessam são exibidos em uma tabela em uma página da web. O que devemos fazer se quisermos baixar esses dados para manipulação ou análise, mas não há botão de download? Poderíamos tente destacar a tabela inteira e copiar e colar no Microsoft Excel ou Planilhas Google. Isso funciona algumas vezes, mas não todas. vamos ver um exemplo simples.

Esta página da Wikipedia tem uma lista de estoques históricos de armas nucleares e testes nucleares por país. Quando destaco todo o conteúdo da tabela e copio (Command+C no Mac / Ctrl+C no Windows) e colo em uma nova planilha no Planilhas Google (Command+V no Mac / Ctrl+V no Windows), Eu recebo um monte de texto confuso em 2 linhas:

https://cdn.ttc.io/i/fit/800/0/sm/0/plain/kit.exposingtheinvisible.org/data-acquisition/table_attempt_1_1.pngtentativa1

https://cdn.ttc.io/i/fit/800/0/sm/0/plain/kit.exposingtheinvisible.org/data-acquisition/table_attempt_1_2.pngtentativa2 Capturas de tela de Lylla Younes

Felizmente, em um caso como esse, temos um plano B. O Planilhas Google tem um função integrada que permite aos usuários raspar dados de tabelas e listas em páginas da web em planilhas do Google Sheets. A partir daí, você pode baixar as planilhas e continuar seu trabalho offline em qualquer software ou programa que você escolher, ou você pode continuar sua análise no Planilhas Google. Vamos dar uma olhada em como funciona.

Esta página da web detalha a função Google Sheets InnerHTML, que importa dados de uma tabela ou lista dentro de um HTML página. Se você não está familiarizado com o funcionamento das funções do Planilhas Google, este documento de suporte é um bom lugar para começar .

Para usar o InnerHTML, digite uma função em uma célula da planilha. Todo a função começa com um sinal de igual (=). O documento InnerHTML explica que a função recebe três parâmetros:

  1. A URL da página da Web em que os dados estão. É importante que a URL esteja entre aspas (» «).

  2. O tipo de estrutura em que os dados estarão contidos. Para esta função, a entrada será “list” (lista, em inglês) ou “table” (tabela, em inglês). Novamente, não se esqueça das aspas.

  3. O número da tabela ou lista na página. Por exemplo, se houver 3 tabelas em uma página e você quiser importar dados da segunda, coloque 2. Não há necessidade de aspas aqui.

Para o nosso exemplo, estamos interessados na primeira tabela da página. Portanto, nossa função ficará assim:

=IMPORTHTML("<https://en.wikipedia.org/wiki/Historical_nuclear_weapons_stockpiles_and_nuclear_tests_by_country>","table",1)


É importante seguir este formato de pontuação exato. Preste muita atenção onde e quando você adiciona suas vírgulas e citações marcas.

Quando eu digito isso na primeira célula de uma planilha vazia do Google e aperte enter, vejo meus dados aparecerem em formato limpo, prontos para serem analisados:

https://cdn.ttc.io/i/fit/800/0/sm/0/plain/kit.exposingtheinvisible.org/data-acquisition/table_attempt_1_3.pngattempt3 Captura de tela de Lylla Younes

Neste exemplo, usamos uma tabela razoavelmente pequena. Tenha em mente que você pode usar esta função mesmo em tabelas ou listas muito grandes, desde que sejam na mesma página.

Domando Dados de PDFs

Domar Dados (data wrangling, em inglês) é o processo de conversão de dados brutos, de forma não estruturada para uma forma analisável por software de computador e linguagens de programação.

Pode haver momentos em que você tenha dados em um arquivo local em seu computador, mas não está em formato legível por máquina. Um dos formatos comuns de dados não legíveis por máquina é um arquivo PDF. Você ju cá viu páginas e páginas de tabelas em um arquivo PDF e pensou: “que desperdício total?” Se ao menos esses dados estivessem em uma planilha para que vocu coderia pesquisá-lo, classificá-lo e filtrá-lo facilmente.

Uma solução comum para esse problema é escrever algum código Python para raspar os dados do arquivo PDF. Mas isso demanda um nível de conhecimento programação que nem todo mundo tem. Felizmente, há um número de opções diferentes para que não é programador quando precisam obter dados de um PDF em formato legível por máquina. Neste guia, vamos explorar apenas um dos essas opções, um software gratuito e de código aberto chamado Tabula. Ferramentas como Comet Docs são realmente eficazes, mas exigem uma assinatura paga para usá-las. Dito isso, todo software tem sua limitações, e há momentos em que o que funcionará em um software não vai funcionar em outro. O objetivo desta seção é apresentá-lo a uma excelente ferramenta de código aberto que expõe você aos conceitos de alto nível que lhe permitirá buscar outras ferramentas para fins semelhantes no futuro, caso precise.

O propósito explícito do Tabula é “liberar tabelas de dados bloqueadas dentro de arquivos PDF.» Vejamos como isso funciona na prática.

Primeiro, baixe a versão do Tabula compatível com seu sistema operacional. Você encontrará as instruções de instalação na metade da página. Depois de baixar o software, abra o Tabula em seu computador clicando duas vezes no ícone. Voco notará que ao invés de abrir um aplicativo em seu computador, O Tabula abrirá uma nova janela no seu navegador de internet. Se isso não acontecer vá para https://localhost:8080. Voco neve ver uma página parecida com esta:

https://cdn.ttc.io/i/fit/800/0/sm/0/plain/kit.exposingtheinvisible.org/data-acquisition/tabula_0.pngtabula0 Captura de tela de Lylla Younes

Em seguida, para praticar um pouco, baixe este documento PDF arquivad no Wayback Machine, que contém uma lista de advogados no sistema judicial distrital do Maine (estamos usando este arquivo para fins de exemplo).

Agora vamos tentar importar o arquivo PDF para o Tabula. Clique em Procurar, localize e selecione o arquivo em seu computador.

https://cdn.ttc.io/i/fit/800/0/sm/0/plain/kit.exposingtheinvisible.org/data-acquisition/tabula_1.pngtabula1 Captura de tela de Lylla Younes

Clique duas vezes no arquivo ou selecione Abrir.

https://cdn.ttc.io/i/fit/800/0/sm/0/plain/kit.exposingtheinvisible.org/data-acquisition/tabula_2.pngtabula2 Captura de tela de Lylla Younes

Em seguida, clique em Importar.

https://cdn.ttc.io/i/fit/800/0/sm/0/plain/kit.exposingtheinvisible.org/data-acquisition/tabula_3.pngtabula3 Captura de tela de Lylla Younes

Dependendo do tamanho do PDF, pode levar algum tempo para que o arquivo seja carregado. Seja paciente!

https://cdn.ttc.io/i/fit/800/0/sm/0/plain/kit.exposingtheinvisible.org/data-acquisition/tabula_4.pngtabula4 Captura de tela de Lylla Younes

Depois que o arquivo for carregado, você verá uma visualização do seu PDF no navegador. Agora é hora de extrair as tabelas.

https://cdn.ttc.io/i/fit/800/0/sm/0/plain/kit.exposingtheinvisible.org/data-acquisition/tabula_5.pngtabula5 Captura de tela de Lylla Younes

A maneira mais fácil de extrair tabelas de dados de um PDF usando Tabula é com o recurso AutoDetect Tables. você pode usar este recurso quando muitas ou todas as tabelas no documento PDF são formatadas em da mesma forma, como é normalmente o caso. Felizmente, nosso arquivo de exemplo se encaixa esta descrição. Clique em AutoDetect Tables (Detectar tabelas automaticamente).

https://cdn.ttc.io/i/fit/800/0/sm/0/plain/kit.exposingtheinvisible.org/data-acquisition/tabula_6.pngtabula6 Captura de tela de Lylla Younes

Você deve ver um retângulo vermelho semitransparente destacando todo o drea da tabela. Se estiver um pouco fora da tabela, você pode clicar manualmente em um canto do retângulo e arrastá-lo para cobrir toda a tabela.

https://cdn.ttc.io/i/fit/800/0/sm/0/plain/kit.exposingtheinvisible.org/data-acquisition/tabula_7.pngtabula7 Captura de tela de Lylla Younes

Quando estiver confortável com a área selecionada, clique em Repeat this Selection (Repetir esta Seleção) para copiar a área de seleção para cada página do documento PDF.

https://cdn.ttc.io/i/fit/800/0/sm/0/plain/kit.exposingtheinvisible.org/data-acquisition/tabula_8.pngtabula8 Captura de tela de Lylla Younes

Neste ponto, esperamos que você consiga ver seus dados removidos das tabelas e em forma tabular. Clique em Export para baixar o dados em um arquivo CSV que você pode arrastar para o Excel.

https://cdn.ttc.io/i/fit/800/0/sm/0/plain/kit.exposingtheinvisible.org/data-acquisition/tabula_9.pngtabula9 Captura de tela de Lylla Younes

Obtendo dados de APIs

https://cdn.ttc.io/i/fit/1000/0/sm/0/plain/kit.exposingtheinvisible.org/il/data-acquisition-02-cik-illustration.pngIlustração de dados cik

Uma das habilidades mais importantes na aquisição de dados é aprender a solicitar informações de APIs.

O termo API é um acrônimo que significa Interface para Programação de Aplicações (Application Programming Interface, em inglês. Você pode pensar nisso como uma agência postal na internet onde você pode enviar uma solicitação e, em troca, receber uma encomenda que voce vediu. Para entender melhor essa metáfora, vamos dar um passo atrás e considerar como a internet funciona. A World Wide Web é essencialmente uma grande rede de servidores conectados.

Um servidor é um programa de computador ou um dispositivo de hardware que fornece um serviço para outro programa de computador e seu usuário (conhecido como cliente). Um exemplo de serviço de servidor típico é o fornecimento de dados a outros computadores.

Todas as páginas da internet são armazenadas em algum lugar do mundo em um servidor remoto ou um computador num lugar distante projetado para processar solicitações. Quando você digita www.twitter.com em seu navegador, uma solicitação é enviada ao servidor remoto do Twitter. O servidor processa a solicitação e envia de volta uma resposta. Seu navegador então processa as informações de resposta e exibe a página.

Neste exemplo, seu navegador interagiu com a API do Twitter — a parte do servidor remoto do Twitter que recebe solicitações e envia respostas. Na maioria dos casos, quando carregamos uma nova página na internet, não sabemos o que está acontecendo em segundo plano. Mas algumas empresas e organizações disponibilizaram suas APIs gratuitamente ao público e publicaram documentação detalhada que permite aos desenvolvedores solicitar dados e entender a forma como as informações da API são estruturadas. Um popular exemplo é API de geocodificação do Google, que permite aos usuários enviar um endereço para o servidor do Google e, por sua vez, receber a latitude e longitude do local. Como você pode imaginar, essa funcionalidade pode ser útil para mapear projetos em que um pesquisador quer traçar pontos em uma geografia. Outro exemplo m p Spotify API, que retorna metadados sobre artistas, músicas e álbuns do catálogo de dados do Spotify.

Em muitos casos, as empresas limitam o que as pessoas podem fazer com suas APIs gratuitamente. Por exemplo, a empresa por trás desta API meteorológica só permite que os usuários reúnam 3 dias de previsões, em vez dos 10 que poderiam solicitar se eles pagaram pelo acesso premium à API.

Em outros casos, as empresas cobram altas quantias para que os desenvolvedores usem suas APIs. De fato, existem empresas cuja principal produto é a API deles! Veja, por exemplo, a PredictHQ, uma empresa com uma API de previsão do tempo detalhada usada por empresas como Uber e Alaska Airlines. A API de tráfego da TomTom possui informações sobre fluxo de tráfego e incidentes em mais de 77 países. Esses exemplos ilustram como governos e empresas dependem de APIs para adquirir dados detalhados em tempo real para informar as operações de logística.

Existem muitas APIs de código aberto bem documentadas que podem ser úteis para jornalistas e investigadores. A API do Twitter, por exemplo, permite que os desenvolvedores solicitem tweets em um determinado período de tempo, com um determinado hashtag. Muitos jornalistas usaram essa API para entender a dinâmica da opinião pública e a difusão de desinformação.


Mudanças Drásticas na API gratuita do Twitter

Em 2023, o Twitter promoveu mudanças drásticas na API gratuita, incluindo limites agressivos e remoção de funcionalidades, tornando-a a versão pouco útil. As informações sobre como utilizá-la ou seu funcionamento são mantidas para fins de arquivo histórico.

Vamos praticar usar APIs

Vamos encontrar uma API básica para praticar. A API de feriados contém dados sobre feriados em dezenas de países ao redor do mundo. Como acontece com quase todas as APIs desenvolvidas profissionalmente, você precisa se inscrever para receber uma chave de API exclusiva para acessar os dados. Você usará essa chave para solicitar dados da API.


Segurança digital e privacidade

Sempre que você se inscrever para uma chave de API ou qualquer outro acesso/serviços para tanto, é recomendável criar um e-mail endereço que não esteja conectado ao seu e-mail pessoal ou de trabalho regular.

Leia sobre a conscientização essencial sobre segurança digital e as medidas recomendadas ao realizar pesquisas online no ** _»guia Segurança em primeiro lugar!»**_ do kit Expondo o Invisível.

https://cdn.ttc.io/i/fit/800/0/sm/0/plain/kit.exposingtheinvisible.org/data-acquisition/api_1.pngapi

Inscreva-se na API aqui e clique no botão Botão Get Your Free API Key (Obtenha sua chave API grátis), no centro da página inicial (deve aparecer depois que você criar uma conta). Na metade da página seguinte, você verá um painel contendo informações básicas da conta, incluindo sua chave de API. Você usará esta chave em breve, quando fizer sua primeira solicitação à API.

https://cdn.ttc.io/i/fit/800/0/sm/0/plain/kit.exposingtheinvisible.org/data-acquisition/api_2.pngapi 2 Captura de tela de Lylla Younes

É sempre uma boa ideia passar algum tempo explorando uma API antes de solicitar dados dela. Se você clicar na guia Países no topo da página da API Holiday, você verá todos os países para o qual a API possui dados de feriados. Se clicar no nome de um país, vocs dode ver que tipo de informação de feriados está disponível para você neste lugar. Passe algum tempo clicando nos países e vendo que tipo de informação que você pode aprender com esta API. Uma vez que você sente que já tem uma ideia das informações disponíveis para você, vamos descobrir como faz para solicitar dados.

Idealmente, a API que você está usando tem algum tipo de documentação que voco Gode ler para entender como acessar seus dados. Clique no Guia Developers (Desenvolvedores) na parte superior da página da API de férias. O nome da aba deve lhe dar uma pista de que é aqui que você pode encontrar informações técnicas especificações sobre solicitações de dados.

Uma API bem desenvolvida fornecerá várias peças essenciais de informações necessárias para fazer uma solicitação de dados. Em primeiro lugar, deve fornecer um URL base, a partir do qual você criará sua solicitação. Essa URL normalmente é apenas a URL da própria API. Você adiciona parâmetros à URL, para especificar as informações que você deseja que a API para enve a você. Certos parâmetros são obrigatórios para fazer uma solicitação de API. Por exemplo, se você tivesse que fazer uma chave de API para acessar a API, essa chave quase certamente será um parâmetro obrigatório em sua solicitação. Como você pode ver na página Desenvolvedores, existem três parâmetros que você deve fornecer ao fazer uma solicitação a esta API:

https://cdn.ttc.io/i/fit/800/0/sm/0/plain/kit.exposingtheinvisible.org/data-acquisition/api_3.pngapi3 Captura de tela de Lylla Younes

A maior parte da documentação da API inclui alguns códigos de exemplo que mostram aos desenvolvedores como consultar ou solicitar dados da API:

https://cdn.ttc.io/i/fit/800/0/sm/0/plain/kit.exposingtheinvisible.org/data-acquisition/api_4.pngapi4 Captura de tela de Lylla Younes

Clicar no cursor para baixo (circulado em vermelho) revela um menu suspenso contendo o nome de diferentes linguagens de programação. Clicando em qualquer destas linguagem exibe um código de exemplo para consultar a API nessa linguagem. O que precisamos prestar atenção é a URL base, ou a URL raiz a partir da qual construiremos nossa solicitação. Quando você solicita dados de uma API, seus parâmetros solicitados serão anexados ao final da URL base da API. Veremos esse processo em ação logo a seguir.

Embora a maioria dos desenvolvedores escreva programas de computador para consultar APIs, você não tem que saber como codificar para acessar os dados de uma API. estaremos trabalhando com Postman, uma interface que pega informações inseridas pelo usuário para formatar e enviar solicitações para uma API. Vamos configurar este serviço para ver como funciona.

Primeiro, crie uma conta no Postman e, em seguida, baixe o aplicativo de desktop para seu sistema operacional. É possível usar o Postman no navegador sem baixar o aplicativo, mas descobri que a empresa coloca limitações nos tipos de solicitações que você pode fazer no navegador.

Depois de abrir o aplicativo da área de trabalho e fazer login, você verá uma página assim:

https://cdn.ttc.io/i/fit/800/0/sm/0/plain/kit.exposingtheinvisible.org/data-acquisition/api_5.pngapi5 Captura de tela de Lylla Younes

Vamos fazer nosso primeiro pedido! No canto superior esquerdo da página, clique no botão + New (novo):

https://cdn.ttc.io/i/fit/800/0/sm/0/plain/kit.exposingtheinvisible.org/data-acquisition/api_6.pngapi6 Captura de tela de Lylla Younes

No menu exibido, clique em Request (Solicitar):

https://cdn.ttc.io/i/fit/800/0/sm/0/plain/kit.exposingtheinvisible.org/data-acquisition/api_7.pngapi7 Captura de tela de Lylla Younes

Digite um nome para sua solicitação (use algo relacionado à API que você está consultando). Você também pode adicionar uma breve descrição detalhando a solicitação que deseja fazer.

https://cdn.ttc.io/i/fit/800/0/sm/0/plain/kit.exposingtheinvisible.org/data-acquisition/api_8.pngapi8 Captura de tela de Lylla Younes

Você deve adicionar sua solicitação a uma Collection (Coleção), que é basicamente apenas uma pasta contendo pedidos. Clique em + Creat Collection (Criar coleção) e dê um nome à sua coleção. Em seguida, clique na marca de seleção e selecione Save (Salvar).

https://cdn.ttc.io/i/fit/800/0/sm/0/plain/kit.exposingtheinvisible.org/data-acquisition/api_9.pngapi9 Captura de tela de Lylla Younes

Agora é hora de construir o seu pedido! Vamos nos referir às APIs documentação do desenvolvedor, que lista os parâmetros necessários para qualquer solicitação à API: o país, a chave API e o ano. Como em qualquer API, há um maneira particular que os usuários são obrigados seguir ao inserir esses parâmetros. Para exemplo, a documentação indica que o parâmetro país deve estar no formato ISO 3166-1 alpha-2 ou ISO 3166-1 alpha-3, que são códigos padronizados de duas e três letras para representando países. Estados/províncias devem estar no formato ISO 3166-2. clicando em qualquer um dos tipos de formato linkados abre uma página da Wikipedia com as especificações do formato. Clicar na lista de países disponíveis na API leva a uma tabela de todos os países para os quais a API possui dados, incluindo os códigos de país em seus formatos apropriados. Os Emirados Árabes Unidos, por exemplo, podem ser solicitados com o código AE ou ARE.

Vamos solicitar dados de feriados do Brasil para o ano de 2019. Sob o Cabeçalho Query Params (Paramêtros da Consulta), comece inserindo sua chave de API. você vai digitar em “chave” como seu parâmetro e a própria chave de API para o valor. Isto deve ser algo como isto:

https://cdn.ttc.io/i/fit/800/0/sm/0/plain/kit.exposingtheinvisible.org/data-acquisition/api_10.pngapi10 Captura de tela de Lylla Younes

Em seguida, adicione o país e o ano:

https://cdn.ttc.io/i/fit/800/0/sm/0/plain/kit.exposingtheinvisible.org/data-acquisition/api_11.pngapi11 Captura de tela de Lylla Younes

Por fim, clique em enviar. Sua solicitação será enviada para a API e voc$1 $2eve receber uma resposta em formato JSON, conforme abaixo:

https://cdn.ttc.io/i/fit/800/0/sm/0/plain/kit.exposingtheinvisible.org/data-acquisition/api_12.png Captura de tela de Lylla Younes

Você pode salvar a resposta como um arquivo JSON em seu computador clicando em o botão Salvar resposta no canto superior direito da caixa de resposta.

Vamos dar uma olhada mais detalhada nas informações e na estrutura do resposta. Os dados JSON são organizados por pares chave-valor. As “chaves” são as elementos à esquerda do “:” e os valores à direita. Então por exemplo, na resposta acima, a primeira chave é “status” e a valor dessa chave é “200” o que indica que a requisição foi bem-sucedida. As informações que mais nos interessam estão contidas dentro da chave «férias». O valor dessa chave é uma lista de todos os feriados no Brasil durante o ano de 2019. Cada feriado da lista o rstruturado como um objeto JSON individual com metadados no feriado. O primeiro feriado, por exemplo, é o Ano Novo. Percorra todos os feriados na lista e examine seus metadados para entender a disposição das informações.

Claro, em seu trabalho investigativo futuro, você provavelmente estars enteressado em APIs contendo diferentes tipos de informações. Rotas de navegação, localizações geográficas e atividades de mídia social são todas exemplos de dados que podem ser obtidos por meio de APIs. Se familiarizar com essas importantes “estações de correio da internet” irá ajudá-lo a coletar informações e entender como as poderosas corporações s ergãos governamentais do mundo otimizam sua própria prática de aquisição de dados.


Publicado em março de 2021
Traduzido para português em julho de 2023

Recursos

Artigos e guias

Ferramentas e Bancos de Dados

  • Comet Docs. Um sistema de gerenciamento de documentos online.

  • Python. Uma linguagem de programação que permite aos desenvolvedores escrever vários programas, como aplicativos da web, sites, ferramentas de análise de dados.

  • SublimeText. Editor de texto para código, marcação.

  • Tabula. Uma ferramenta para extrair tabelas de dados bloqueadas em arquivos PDF.

  • Tableau. Um conjunto de aplicativos de software para visualização e análise de dados.

Glossário

term-api

API – significa interface de programação de aplicativos (Application Programmin Interface em inglês), uma ferramenta de software que facilita a comunicação entre um usuário e um conjunto de dados, entre outras coisas. uma forma pela qual um plataforma pode tornar seus dados acessíveis a desenvolvedores externos gratuitamente ou sob algumas condições ou taxas. Por exemplo, a API da biblioteca de anúncios do Facebook permite que os usuários consultem dados de anúncios usando um conjunto particular de comandos desenvolvidos pelo Facebook.

term-data-acquisition

Aquisição de dados - o processo pelo qual você encontra e coleta informações.

term-data-wrangling

Data wrangling - o processo de conversão de dados de sua forma bruta e não estruturada, para uma forma analisável por software de computador e linguagens de programação.

term-hashtag

Hashtag – símbolo introduzido pelo sinal de número, ou símbolo de cerquilha, #, é um tipo de tag de metadados usada em redes sociais como Twitter, Instagram e outros serviços de microblogging. Ela permite que os usuários apliquem dinâmica, marcação gerada pelo usuário que ajuda outros usuários a encontrar facilmente mensagens com um tema ou conteúdo específico. (fonte Wikipedia)

term-machine-readable-data

Dados legíveis por máquina - informações que estão em um formato que facilitam serem processadas por software de computador e linguagens de programação. Os dados legíveis por máquina devem ser organizados em um formato de arquivo como CSV ou JSON.

term-metadata

Metadados – informações que descrevem as propriedades de um arquivo, seja imagem, documento, gravação de som, mapa etc. Por exemplo, o conteúdo de uma imagem são os elementos visíveis nela, enquanto a data em que a imagem foi capturada, a localização e o dispositivo em que foi capturada são chamados de metadados.

term-programming-language

Linguagem de programação – uma linguagem formal composta por um conjunto de instruções para produzir a saída. Exemplo de linguagem de programaçãe i Python. Como uma linguagem humana, as linguagens de programação têm “sintaxe”, ou regras de como o usuário deve escrever o código para atingir o desejado saída.

term-python

Python - uma linguagem de programação que permite aos desenvolvedores escrever vários programas, como aplicativos da Web, websites, ferramentas de análise de dados: https://www.python.org/.

term-pythoneditor

Editor Python - aplicativo para navegar, depurar, compilar e executar scripts na linguagem Python.

term-scraping

Scraping – o processo de extração de dados/informações de conteúdo legível por humanos, como o de uma página da Web, em um texto legível por máquina formato, como um arquivo CSV.

term-server

Servidor – um programa de computador ou dispositivo de hardware que fornece um serviço para outro programa de computador e seu usuário (conhecido como cliente). Um exemplo de serviço de servidor típico é o fornecimento de dados a outros computadores. Outro é hospedar uma página da Web ou enviar e receber e-mail de/para outros computadores.