Propaganda
"Computador! Mostre-me todas as condições climáticas atuais a 300 milhas da minha localização atual ”
"Sim capitão"
"Agora, mostre-me os níveis de umidade para esses locais, representados por longitude e latitude em um mapa"
"Sim capitão"
Deseja transformar sua conta do Google Drive em um clima inteligente sistema de análise Torne-se um analista de dados especialista durante a noite usando as ferramentas de relatório da planilha do GoogleVocê sabia que uma das melhores ferramentas de todas para conduzir a análise de dados é na verdade a planilha do Google? O motivo disso não é apenas porque ele pode fazer quase tudo o que você pode querer ... consulte Mais informação e viver essa fantasia de Star Trek? Ok, talvez você não consiga transformar as planilhas do Google em um sistema de computador artificialmente inteligente que responderá aos seus comandos de voz, mas neste artigo, mostrarei como você pode importar dados meteorológicos da Internet e ter seu próprio painel personalizado com todas as informações importantes para você.
A realização desta tarefa pode parecer complicada no começo, se você não estiver familiarizado com o ImportXML ou o Xpath para raspagem de página da web Como criar um rastreador básico da Web para extrair informações de um siteSempre quis capturar informações de um site? Veja como escrever um rastreador para navegar em um site e extrair o que você precisa. consulte Mais informação , mas mostrarei alguns truques muito simples que você pode usar para extrair as informações meteorológicas desejadas especificamente dos EUA. Serviço Nacional de Meteorologia local na rede Internet. Se você estiver fora dos EUA, as mesmas técnicas devem funcionar para o seu próprio serviço meteorológico local, você só precisamos determinar a estrutura de como os dados climáticos são organizados e ajustar a consulta adequadamente.
Isso é semelhante ao relatórios automatizados de planilhas Como criar um relatório automatizado da planilha do Google a partir de dados do Analytics consulte Mais informação Eu descrevi há pouco tempo, mas, neste caso, ele usa dados raspados da Web em vez de dados do Google Analytics. Portanto, se você deseja personalizar seu próprio painel meteorológico atualizado automaticamente em sua própria conta do Google Drive, vamos começar!
Localizando dados climáticos de origem
Neste exercício, você irá coletar dados climáticos no site do Serviço Nacional de Meteorologia, procurando classes CSS específicas dentro da página que identifiquem os dados desejados. Felizmente, este site organizou os resultados do tempo usando aulas quando você pesquisa a previsão local em sua área.
O formato do HTML em que estamos interessados neste caso é uma "classe de abrangência" ou uma "classe p" que identifica os dados específicos. Por exemplo, mostrado abaixo, você pode ver a classe "myforecast-current-lrg" identifica a última temperatura registrada para a região consultada.
Assim, sempre que você executar uma consulta no site, verá um URL que mostra a longitude e latitude desse local. Mantenha uma cópia desse URL, porque você o usará para criar seu painel. Você pode visualizar o código-fonte HTML diretamente ou usar seu ferramentas de desenvolvedor de navegador Descobrir problemas do site com ferramentas para desenvolvedores do Chrome ou FirebugSe você seguiu meus tutoriais do jQuery até agora, talvez já tenha encontrado alguns problemas de código e não saiba como corrigi-los. Quando confrontado com um código não funcional, é muito ... consulte Mais informação para encontrar as aulas que você precisa.
Configurando os dados da fonte climática
A maneira como isso funciona é que você criará uma planilha de dados para cada local para o qual deseja coletar dados. Digite os rótulos para esses dados na coluna da esquerda e, na próxima coluna, você precisará digitar a fórmula ImportXML para extrair esses dados do site.
Para Temperatura, por exemplo, o seguinte funciona:
= importxml (B12; "// p [@ class = 'myforecast-current-lrg']")
B12 contém o URL após a realização da consulta de localização. Usar “// p [@ class =” é como configurar a consulta Xpath para extrair a “classe p” na página com o nome especificado. Esta consulta retorna a temperatura na página.
A extração de umidade, velocidade do vento e o restante dos pontos de dados realmente exigiram a extração de itens da lista dentro de uma lista UL com o nome de classe "detalhe das condições atuais". A seguinte declaração ImportXML realiza isso:
= importxml (B12; "// ul [@ class = 'detalhe das condições atuais' '// li")
Novamente, "ul" identifica o elemento base e, em seguida, o nome da classe é especificado entre colchetes, como mostrado. Isto é seguido pelo "// li" indicando que você deseja extrair todos os itens da lista dentro dessa classe UL.
Isso preenche o restante dos itens de dados na planilha de origem desse local.
Você também deve incluir o URL neste caso, porque a latitude e a longitude estão incluídas no URL e você pode usar o Google Spreadsheet para mapear pontos de dados em um mapa (mostrado abaixo).
Repita o processo acima para todos os locais para os quais deseja obter dados climáticos. Execute a consulta para esse local no site, copie o URL, crie uma nova planilha para o local e preencha-a com as instruções ImportXML necessárias para raspar os dados necessários.
Criando a planilha do painel principal
Depois de criar todas as suas folhas de dados de localização, você estará pronto para criar a planilha de dados principal para o seu painel. Isso é basicamente para organizar os dados no formato de tabela, para que seja mais fácil mapear itens como temperatura, umidade, velocidade do vento etc.
Crie uma linha de cabeçalho para todos os dados e, em seguida, simplesmente mapeie cada célula para os locais da planilha de dados que contêm esses dados.
Depois de concluir, todos os dados que você coletou do site para cada local serão apresentados nesta tabela única para facilitar a análise (e gráficos).
Em alguns casos, são necessários alguns ajustes, porque os dados são apresentados como cadeias de caracteres, incluindo unidades. Existem alguns truques para extrair apenas os valores dos dados. A primeira é remover as unidades finais usando uma fórmula de planilha como esta:
= médio (C2,1, encontre ("F", C2) -2)
Isso basicamente localiza a localização da unidade e extrai o valor real até o início do texto da unidade. Depois de extrair apenas o número, será necessário convertê-lo em um valor real na planilha para que você possa fazer cálculos ou fazer um gráfico. Fazer isso é simples, com apenas uma função de "valor", como mostrado aqui.
Depois de criar todos os seus valores na planilha principal do painel, você termina de configurar seus dados. Agora você pode criar gráficos e medidores que compõem seu painel gráfico meteorológico.
Criando seu painel meteorológico
Esta é a parte simples - basta mapear a localização juntamente com os dados que você deseja exibir. Você pode fazer coisas como mostrar um gráfico de barras de todos os locais - no meu caso, posso ver rapidamente o ponto mais quente do estado usando esse tipo de gráfico.
Você pode criar medidores de temperatura, umidade ou velocidade do vento, sempre divertidos para exibir em um painel. Você pode extrair os dados de longitude e latitude da URL usando o mesmo comando "intermediário" que eu descrevi acima, insira esses locais na planilha principal (com uma vírgula entre eles) e, em seguida, use essa coluna para traçar dados em um mapa.
Abaixo, mostro as temperaturas pelas coordenadas de GPS no widget de mapas disponível no Google Spreadsheets. Círculos maiores no mapa indicam locais com temperaturas mais altas.
Como você provavelmente pode imaginar, você pode reunir alguns painéis realmente interessantes, mostrando todos os tipos de informações sobre o clima no seu estado, país ou em qualquer região da qual você coletou seus dados. Você pode usar algumas das muitas ferramentas úteis Funções da planilha do Google Realize proezas incríveis com essas funções úteis da planilha do GoogleTenho vergonha de admitir que só recentemente decidi começar a experimentar as Google Spreadsheets, e o que descobri é que qualquer fascínio ou poder que o Excel tivesse sobre mim devido à incrível coisas... consulte Mais informação que estão disponíveis para desenvolver um painel realmente interessante.
Embora este artigo se concentre em coletar dados de sites meteorológicos, também é um exemplo de como você pode usar o ImportXML para importar informações de verdade qualquer site disponível no mercado, e o uso do Xpath oferece muito mais flexibilidade para importar informações muito específicas de uma página da web que o ImportFeed ou o ImportHTML apenas não fornecem.
Você consegue pensar em alguns usos divertidos e criativos para ImportXML e Google Spreadsheets? Compartilhe algumas de suas idéias e talvez possamos tentar concluir uma de suas idéias de projeto em um artigo futuro!
Ryan é bacharel em Engenharia Elétrica. Ele trabalhou 13 anos em engenharia de automação, 5 anos em TI e agora é engenheiro de aplicativos. Um ex-editor-chefe do MakeUseOf, ele falou em conferências nacionais sobre visualização de dados e foi apresentado na TV e rádio nacional.