Anuncio

"¡Computadora! Mostrarme todas las condiciones climáticas actuales dentro de las 300 millas de mi ubicación actual "
"Sí, capitán"
"Ahora, muéstrame los niveles de humedad para esos lugares, trazados por longitud y latitud en un mapa"
"Sí, capitán"

¿Te gustaría convertir tu cuenta de Google Drive en un clima inteligente? sistema de analisis Conviértase en un analista de datos experto durante la noche utilizando las herramientas de informe de hoja de cálculo de Google¿Sabía que una de las mejores herramientas para realizar análisis de datos es en realidad la hoja de cálculo de Google? La razón de esto no es solo porque puede hacer casi todo lo que quieras ... Lee mas y vivir esta fantasía de Star Trek? De acuerdo, es posible que no pueda convertir las hojas de cálculo de Google en un sistema informático artificialmente inteligente que responda a sus comandos de voz, pero en este artículo Te mostraré cómo puedes importar datos meteorológicos desde Internet y tener tu propio panel de control personalizado con toda la información que es importante para usted.

instagram viewer

Lograr esta tarea puede sonar complicado al principio si no está familiarizado con el uso de ImportXML o Xpath para raspado de página web Cómo construir un rastreador web básico para extraer información de un sitio web¿Alguna vez quisiste capturar información de un sitio web? Aquí le mostramos cómo escribir un rastreador para navegar por un sitio web y extraer lo que necesita. Lee mas , pero le mostraré algunos trucos muy simples que puede usar para extraer la información meteorológica que desea específicamente fuera de los EE. UU. Servicio Meteorológico Nacional sitio web. Si se encuentra fuera de los EE. UU., Las mismas técnicas deberían funcionar para su propio servicio meteorológico local, usted solo necesita determinar la estructura de cómo se presentan los datos meteorológicos y ajustar la consulta en consecuencia.

Esto es similar a la informes de hoja de cálculo automatizados Cómo crear un informe automatizado de hoja de cálculo de Google a partir de datos analíticos Lee mas Lo describí no hace mucho tiempo, pero en este caso utiliza datos raspados en la web en lugar de datos de Google Analytics. Por lo tanto, si desea personalizar su propio panel meteorológico actualizado automáticamente en su propia cuenta de Google Drive, ¡comencemos!

Encontrar datos meteorológicos de origen

En este ejercicio, va a extraer datos meteorológicos del sitio web del Servicio Meteorológico Nacional buscando clases CSS específicas dentro de la página que identifiquen los datos que desea. Afortunadamente, este sitio organizó los resultados del clima usando clases cuando busca el pronóstico local en su área.

tablero de tiempo1

El formato del HTML que nos interesa en este caso es una "clase span" o una "clase p" que identifica los datos específicos. Por ejemplo, como se muestra a continuación, puede ver que la clase "myforecast-current-lrg" identifica la última temperatura registrada para la región consultada.

tablero de tiempo2

Por lo tanto, cada vez que ejecute una consulta en el sitio, verá una URL que muestra la longitud y la latitud de esa ubicación; conserve una copia de esa URL porque la usará para construir su tablero. Puede ver el código fuente HTML directamente o usar su herramientas de desarrollador de navegador Resuelva los problemas del sitio web con las herramientas de desarrollador de Chrome o FirebugSi ha estado siguiendo mis tutoriales de jQuery hasta ahora, es posible que ya se haya encontrado con algunos problemas de código y no sepa cómo solucionarlos. Cuando se enfrenta a un bit de código no funcional, es muy ... Lee mas para encontrar las clases que necesitas.

Configuración de la fuente de datos meteorológicos

La forma en que esto funciona es que creará una hoja de datos para cada ubicación para la que desea recopilar datos. Escriba las etiquetas para esos datos en la columna de la izquierda, y en la siguiente columna, deberá escribir la fórmula ImportXML para extraer esos datos del sitio web.

Para Temperatura, por ejemplo, lo siguiente funciona:

= importxml (B12; "// p [@ class =’ myforecast-current-lrg ’]")

B12 contiene la URL después de realizar la consulta de ubicación. El uso de "// p [@ class =" es cómo configurar la consulta Xpath para extraer la "clase p" en la página con el nombre especificado. Esta consulta devuelve la temperatura en la página.

tablero de tiempo4

La extracción de la humedad, la velocidad del viento y el resto de los puntos de datos realmente requirieron extraer elementos de la lista dentro de una lista UL con un nombre de clase "detalle de condiciones actuales". La siguiente instrucción ImportXML logra esto:

= importxml (B12; "// ul [@ class =’ current-condition-detail ’] // li")

Nuevamente, "ul" identifica el elemento base, y luego el nombre de la clase se especifica entre paréntesis como se muestra. Esto es seguido por el "// li" que indica que desea extraer todos los elementos de la lista dentro de esa clase UL.

Esto completa el resto de los elementos de datos en la hoja de origen para esa ubicación.

tablero de tiempo7

También debe incluir la URL en este caso, porque la latitud y la longitud están incluidas en URL, y puede usar el uso de mapas de hoja de cálculo de Google para trazar puntos de datos en un mapa (se muestra abajo).

Repita el proceso anterior para cada ubicación para la que desee obtener datos meteorológicos. Ejecute la consulta para esa ubicación en el sitio web, copie la URL y cree una nueva hoja para la ubicación, y complétela con las declaraciones ImportXML necesarias para raspar los datos que necesita.

Creación de la hoja de cálculo del panel principal

Una vez que haya creado todas sus hojas de datos de ubicación, estará listo para crear la hoja de cálculo principal de datos para su tablero. Esto es básicamente para diseñar los datos en formato de tabla para que sea más fácil trazar cosas como temperaturas, humedad, velocidad del viento, etc.

Cree una fila de encabezado para todos los datos, y luego simplemente asigne cada celda a las ubicaciones de la hoja de datos de ubicación que contienen esos datos.

tablero de tiempo8

Una vez que haya terminado, todos los datos que ha eliminado del sitio web para cada ubicación se presentarán en esta tabla única para facilitar su revisión (y gráficos).

tablero de tiempo10

Hay algunos ajustes necesarios en algunos casos, porque los datos vienen como cadenas que incluyen unidades. Hay algunos trucos para extraer solo los valores de datos. La primera es quitar las unidades finales usando una fórmula de hoja de cálculo como esta:

= medio (C2,1, encontrar ("F", C2) -2)

Básicamente, esto encuentra la ubicación de la unidad y luego extrae el valor real hasta que comienza el texto de la unidad. Una vez que haya extraído solo el número, deberá convertirlo a un valor real en la hoja de cálculo para que pueda hacer cálculos o trazarlo. Hacer esto es simple con solo una función de "valor" como se muestra aquí.

tablero de tiempo11

Una vez que haya creado todos sus valores en la hoja de cálculo del panel principal, habrá terminado de configurar sus datos. Ahora puede pasar a la creación de gráficos y medidores que compondrán su tablero de tiempo gráfico.

Crear su panel de clima

Esta es la parte simple: simplemente trace la ubicación junto con los datos que desee mostrar. Puede hacer cosas como mostrar un gráfico de barras de todas las ubicaciones; en mi caso, puedo ver el lugar más cálido del estado de un vistazo usando este tipo de gráfico.

tablero de tiempo12

Puede crear indicadores de temperatura, humedad o velocidad del viento, que siempre son divertidos para mostrar en el tablero de instrumentos. Puede extraer los datos de longitud y latitud de la URL utilizando el mismo comando "medio" que describí anteriormente, inserte esas ubicaciones en la hoja de cálculo principal (con una coma entre ellas), y luego use esa columna para trazar datos en un mapa.

A continuación, he trazado las temperaturas por coordenadas GPS en el widget de gráficos de mapas disponible en las Hojas de cálculo de Google. Los círculos más grandes en el mapa indican ubicaciones con las temperaturas más altas.

tablero de tiempo13
Como probablemente pueda imaginar, puede reunir algunos paneles de control realmente atractivos que le muestran todo tipo de información sobre el clima, ya sea en su estado, país o en cualquier región de la que haya recopilado sus datos. Puedes utilizar algunos de los muchos útiles Funciones de hoja de cálculo de Google Realiza increíbles hazañas con estas útiles funciones de hoja de cálculo de GoogleMe da vergüenza admitir que solo recientemente he decidido comenzar a experimentar con las hojas de cálculo de Google, y lo que descubrí es que cualquier atracción o poder que Excel tuviera sobre mí debido a la increíble cosas... Lee mas que están disponibles para desarrollar un tablero realmente atractivo.

Si bien este artículo se centra en extraer datos de sitios web meteorológicos, también es un ejemplo de cómo puede usar ImportXML para importar información de alguna sitio web, y el uso de Xpath le brinda mucha más flexibilidad para importar información muy específica de una página web que ImportFeed o ImportHTML simplemente no proporcionan.

¿Puedes pensar en algunos usos divertidos y creativos para ImportXML y Google Spreadsheets? ¡Comparta algunas de sus ideas y tal vez podamos intentar completar una de sus ideas de proyecto en un artículo futuro!

Ryan tiene una licenciatura en ingeniería eléctrica. Ha trabajado 13 años en ingeniería de automatización, 5 años en TI y ahora es ingeniero de aplicaciones. Ex editor jefe de MakeUseOf, ha hablado en conferencias nacionales sobre visualización de datos y ha aparecido en la televisión y radio nacionales.