Herramientas para capturar y convertir la web

Extraer datos y transformarlos intun conjunto de datos

Uno de los requisitos más comunes es extraer datos de un sitio web y convertirlo into una estructura tabular que se puede exportar para su posterior procesamiento. Pero, ¿qué es un conjunto de datos y cómo se utiliza en GrabzIt's Web Scraper?

Conjunto de datos de ejemplo: lista de precios

A continuación se muestran los datos de la tabla contenidos en el conjunto de datos. lista de precios, la tabla consta de tres columnas etiqueta del artículo, Descripción del Artículo y precio del articulo.

etiqueta del artículo Descripción del Artículo precio del articulo
cámara Toma fotos digitales $99.00

Para crear este conjunto de datos, deberá utilizar las siguientes instrucciones de raspado.

Data.save('Camera', 'price list', 'item label');
Data.save('Takes digital photos', 'price list', 'item description');
Data.save('$99.00', 'price list', 'item price');

Esto usa el Data.save método para agregar un valor de los datos a un particular conjunto de datos y visión de conjunto. Cada vez que el Data.save Se llama al método con el mismo conjunto de datos y parámetros de nombre de columna. Se agrega una nueva fila a esa columna. Sin embargo, las instrucciones de raspado anteriores no son muy útiles ya que estamos creando el conjunto de datos utilizando valores estáticos. El siguiente código muestra el HTML de una página web, luego escribiremos instrucciones de raspado para extraer dinámicamente los datos de la página y save it intun conjunto de datos

<html>
    <body>
        <span id="spnLabel">Nikon 1055</span>
        <span id="spnDescription">Great little camera, creates clear sharp images.</span>
        <span id="spnPrice">$99.99</span>
    </body>
</html>

Ahora usaremos el Page.getTagValue Método para extraer los valores de las etiquetas span.

Data.save(Page.getTagValue({"id":{"equals":"spnLabel"}}), 'price list', 'item label');
Data.save(Page.getTagValue({"id":{"equals":"spnDescription"}}), 'price list', 'item description');
Data.save(Page.getTagValue({"id":{"equals":"spnPrice"}}), 'price list', 'item price');

Como puedes ver Page.getTagValue Los métodos utilizan un filtro, que identifica de forma exclusiva el elemento HTML del que se debe extraer el texto. En este caso, los filtros especifican que el atributo id de HTML debería ser igual spnLabel, spnDescription or spnPrice respectivamente. Puede generar fácilmente un filtro haciendo clic en el Botón de filtro icono, que muestra un asistente para simplificar la construcción del filtro.

Una vez que haya construido su conjunto de datos como lo mostramos aquí, puede decidir cómo desea exportarlo en el Opciones de exportación lengüeta.