Imagina ser capaz de obtener datos de cualquier página web de forma rápida y eficiente, eliminando la monotonía de la recopilación de datos manual de sitios web. En este artículo, exploraremos la impresionante técnica de scraping web utilizando el intérprete de código ChatGPT. Te sorprenderá la efectividad y sencillez de este método.
Profundizando en el Uso del Intérprete de Código ChatGPT para Web Scraping
La extracción de datos de sitios web puede ser un proceso laborioso y fatigoso. No obstante, con herramientas como ChatGPT, esta tarea puede volverse mucho más sencilla.
ChatGPT es un modelo de lenguaje desarrollado por la OpenAI con la intención de realizar tareas relacionadas con el procesamiento del lenguaje natural. Su objetivo es el de entender y generar contenido de texto, interactuando de manera coherente y relevante.
Este impresionante modelo no solo es capaz de entender las solicitudes que se le presentan: lo verdaderamente sorprendente es su habilidad para llevar a cabo las tareas indicadas con un alto nivel de precisión. Esto lo hace especialmente útil para el web scraping, donde la capacidad para identificar y extraer información específica de un sitio web es primordial.
Método de Scraping
El procedimiento para el scraping web con ChatGPT es tan sencillo como eficaz. Partiendo de una página web de la que se desea extraer datos, navegamos a la misma y procedemos a guardarla como un archivo HTML en nuestro dispositivo.
En este caso, demostraremos la eficacia de ChatGPT con un ejemplo concreto: la extracción de datos de listados de televisores de la página de Amazon.
Con ese fin, hacemos la abreviada navegación a la respectiva página y guardamos la misma como un archivo HTML.
Una vez que hemos guardado el código fuente de una página web en un archivo HTML en nuestro dispositivo, el siguiente paso es subir este archivo a ChatGPT para su interpretación. Esto se realiza fácilmente a través de la plataforma GPT-4 seleccionando la opción code interpreter y utilizando el botón de subida de archivos para seleccionar el archivo HTML guardado. Al terminar la subida, el contenido de la página web se visualiza en un formato HTML sencillo.
Instrucciones para ChatGPT
Una vez que hemos subido el archivo, debemos explicarle a esta potente herramienta qué es exactamente lo que estamos buscando. En nuestro supuesto caso de la página de Amazon, por ejemplo, podríamos decirle:
"Desde el archivo HTML, extrae el nombre del producto y el precio, coloca los datos en una tabla y expórtalos a un archivo CSV".
En esta instrucción, estamos dirigiendo a ChatGPT para buscar y recoger específicamente el nombre de producto y precio correspondiente, colocar toda esta información recopilada en una tabla y, finalmente, exportarla a un archivo CSV que podemos descargar y visualizar.
Precisión en la Extracción de Datos
ChatGPT es extremadamente capaz y suele hacer un trabajo excelente al extraer los datos que requiere. Sin embargo, hay momentos en que necesitamos ser más concretos en nuestras solicitudes, para lo cual podemos proporcionar directamente el elemento HTML exacto que contiene la información que necesitamos.
Para lograrlo, hacemos click derecho en el lugar exacto donde se encuentra la información que necesitamos (por ejemplo, el nombre del producto) en nuestro navegador y seleccionamos la opción 'inspeccionar'. Esto nos lleva a las herramientas de desarrollador del navegador, y desde allí, podemos copiar el nombre del elemento HTML y pegarlo en nuestras instrucciones para ChatGPT, asegurándonos de que se extraigan los datos correctos.
Tratamiento de Datos Faltantes
Otro aspecto importante al realizar web scraping con ChatGPT es cómo manejar los datos que faltan. En muchas páginas, anomalías como productos sin precios o listados de empleo sin salarios pueden causar problemas en la extracción de datos.
Sin embargo, proporcionando instrucciones claras a ChatGPT, podemos controlar cómo se manejan estos casos. Así, podríamos haberle instruido:
"En caso de que el precio del producto no esté disponible, deja ese dato como null."
De esta manera, evitamos que ChatGPT intente llenar el vacío con datos duplicados de otras partes del sitio web.
Aprovechamiento de los Resultados
Una vez que ChatGPT ha procesado nuestras solicitudes, la herramienta genera un archivo CSV listo para descargar con todos los datos extraídos. Este archivo puede abrirse con cualquier programa compatible con CSV para explorar los resultados.
Por ejemplo, supongamos que se extrajeron los precios y nombres de varios televisores del sitio web de Amazon. Al abrir nuestro archivo CSV, deberíamos ver los datos presentados en un formato tabular, con una columna que tiene los nombres de los productos y otra poseyendo los precios. Aquí, podemos confirmar que los datos se han extraído correctamente, y si encontramos un error, siempre podemos volver a ChatGPT para seguir iterando hasta que nuestra extracción de datos sea perfecta.
Detalles de los Resultados del Scraping
Después de iniciar el proceso de scraping web con el intérprete de código ChatGPT, es emocionante ver cómo la tecnología trabaja por ti y espera a que los resultados se hagan visibles. Este será el enfoque central de este apartado: los detalles sobre cómo ver y entender los resultados del scraping web con ChatGPT.
Confirmación de la Extracción de Datos Correcta
Una vez que envías las instrucciones a ChatGPT, este se pone en marcha para realizar la tarea con una eficiencia que a veces te dejará boquiabierto. Lo primero que notas es cómo ChatGPT empieza a extraer los nombres de los productos y los precios correspondientes de la página de Amazon. Por ejemplo, en nuestro caso simulado, pudimos observar que el primer producto extraído fue un Amazon Fire de 43 pulgadas que costaba $349.
Amazon Fire 43 inches - $349
A simple vista, este producto y su precio coinciden con los datos ofrecidos en la página. ¿Suena demasiado simple para ser verdad, verdad? Pero esta es la belleza de ChatGPT y del poder del web scraping.
Extracción de la Tabla de Datos y Exportación a CSV
Pero cualquier tecnología de extracción de datos no estaría completa sin la capacidad de exportar y almacenar los datos extraídos de manera que puedan ser utilizados y analizados. ChatGPT resuelve este aspecto con destreza.
Tras la extracción de los datos, ChatGPT pasa a la tarea asignada de crear una tabla con las dos columnas solicitadas: el nombre del producto y el precio. A continuación, ofrece un archivo CSV de esta tabla.
Titanfall TV - $349
ShadowFax TV - $499
Valkyrie TV - $599
Este archivo se puede descargar fácilmente. Ahora tienes una lista completa de productos y sus precios en tu dispositivo local, lista para ser utilizada como mejor te parezca.
Verificación de los Datos Extraídos
Una vez que has descargado el archivo, una tarea importante es la verificación de los datos. Aquí es donde la importancia de las instrucciones de gestión de datos nulos se hace evidente.
Al abrir el archivo CSV y revisar los datos, puedes observar que los datos extraídos coinciden con los que se muestran en la lista de televisores de Amazon. Esto incluye los diversos modelos de televisores, como el Amazon Fire TV, Toshiba, Insignia y otras marcas, junto con sus precios respectivos.
En una verificación más profunda, notarás que los datos ausentes, como observado en algunos televisores que no tenían un precio etiquetado, han quedado anotados como datos nulos (o 'NULL').
ABC TV - NULL
XYZ TV - $399
Recordarás que esta fue una instrucción específica proporcionada a ChatGPT para evitar errores en la recopilación de datos o la duplicación incorrecta de precios. Esta precisión en el manejo de datos ausentes garantiza la integridad de tus datos y evita confusiones o malinterpretaciones en el análisis posterior.
En resumen, ver los resultados del scraping web con ChatGPT es un proceso que, aunque puede parecer simple y directo, está respaldado por una serie de detalles técnicos y funcionales que garantizan la calidad y la precisión de los datos extraídos. La simplicidad de uso de ChatGPT, combinada con su poderosa capacidad para manejar y entregar datos de sitios web de manera eficiente, hace del scraping web un campo emocionante y altamente aplicable de la tecnología de hoy.
Expansión del Proceso de Scraping: Incorporando Múltiples Páginas
Habiendo dominado ya los rudimentos del scraping web con el intérprete de código ChatGPT, es natural querer expandir nuestros horizontes. Aunque a veces puede ser suficiente con los datos de una sola página, los proyectos nuevos y más ambiciosos requerirán una capacidad equivalente para manejar múltiples páginas. Afortunadamente, ChatGPT está bien equipado para esta tarea.
Capturando Datos en Varias Páginas
El proceso de incorporar múltiples páginas en la operación de scraping no es más complicado que trabajar con una sola. Supongamos, por ejemplo, que estamos interesados en continuar nuestra extracción de la página de Amazon, pero ahora con la segunda página de la lista de resultados.
Como siempre, el primer paso será navegar a la página relevante en nuestro navegador y guardar todo el contenido de la página como un archivo HTML con Ctrl S
(o Command S
si estás usando una Mac). Para mantener nuestros datos organizados es vital tener una nomenclatura clara. Así, podemos bautizar este archivo como "amazon.com_TVs2", para indicar que es la segunda página de la misma categoría de productos que la primera.
Interacción con ChatGPT
Con nuestro archivo ya guardado, el próximo paso será cargarlo en la interfaz de ChatGPT. Esto implica subir el archivo, exactamente igual que hicimos con la primera página. Una vez cargado, tendremos un código HTML simple que ChatGPT puede interpretar.
Es importante destacar que para que el scraping sea coherente a lo largo de varias páginas, las instrucciones de extracción deben ser las mismas que para la primera página. Por lo tanto, nuestras instrucciones pueden ser algo como:
"Esta es la segunda página del sitio web anterior. Utiliza el archivo HTML para extraer los datos siguiendo los mismos pasos que describí antes."
El Completo Trabajo de ChatGPT
Siguiendo nuestras instrucciones, ChatGPT se embarcará en la tarea de scraping, extrayendo los nombres de los productos y los precios correspondientes, exactamente como lo hizo con la primera página. En última instancia, el resultado será un archivo CSV exportado que contiene los datos extraídos de la segunda página.
Cabe destacar que ChatGPT no sólo extrae los datos según nuestras instrucciones, sino que también los ordena cuidadosamente en un formato tabular fácil de leer. De este modo, podremos confirmar fácilmente que nuestros datos se han extraído correctamente.
Una vez que hemos logrado hacer scraping de dos páginas, no hay límites para cuántas más podríamos hacer. De hecho, este proceso se puede repetir en terceras, cuartas, quinas páginas y en todas las que se requieran para nuestro proyecto. Podríamos, por ejemplo, hacer scraping de todas las páginas de resultados de Amazon para obtener una visión completa de todos los televisores disponibles. De esta manera, ChatGPT se convierte en una herramienta potente y escalable para el scraping web, incluso cuando se emplea a gran escala.
Ampliando el Horizonte del Web Scraping con ChatGPT
La estrategia de scraping web con ChatGPT no está limitada a un único tipo de página web o a ciertos grupos de datos. Al contrario, la flexibilidad y adaptabilidad de este método permite obtener datos de una amplia gama de páginas web y de distintos formatos. Para demostrar esto, vamos a explorar cómo se puede utilizar ChatGPT para extraer datos de la página web Glassdoor, una popular plataforma de evaluaciones de empresas y ofertas laborales.
Entrando en Glassdoor
Imagina que estás buscando ofertas laborales en el campo de la ciencia de datos. Te interesa no solo el título del trabajo, sino también conocer la empresa que ofrece la posición, la ubicación del puesto y el salario que se ofrece. Con ChatGPT puedes obtener todos estos datos de una sola vez.
Para empezar, navega hasta la página de Glassdoor y busca el término data scientist. Como en el caso anterior, guarda la página como un archivo HTML en tu computadora. Por conveniencia, puedes llamar a este archivo "Glassdoor_job_search_DS.HTML".
Preparando a ChatGPT para Glassdoor
Una vez que hayas subido el archivo HTML a la interfaz GPT-4 en la sección de 'code interpreter', deberás proporcionar a ChatGPT instrucciones claras y detalladas sobre los datos que deseas extraer. En este caso, queremos que busque los elementos HTML con los IDs específicos y extraiga los datos correspondientes.
Los elementos que queremos extraer son:
- El nombre de la empresa
- El título del trabajo
- La ubicación del trabajo
- El salario ofrecido
Cuando trabajas con HTML, es importante identificar correctamente los elementos que deseas extraer. Dado que cada elemento HTML tiene una ID única, podemos utilizar esta propiedad para orientar a ChatGPT. Para obtener las IDs de los elementos deseados, sigue el mismo procedimiento que antes: haz click derecho en el dato que deseas extraer, selecciona 'inspeccionar' y copia la ID del elemento.
Una vez que hayas recopilado las IDs de todos los elementos que deseas extraer, puedes proceder a configurar a ChatGPT para realizar la tarea. Asegúrate de especificar que combinaremos los resultados en un formato tabular y que los exportaremos en un archivo CSV. Adicionalmente, como antes, debes dar instrucciones detalladas sobre cómo manejar los datos faltantes y decirle a ChatGPT que, en ausencia de cualquier dato, debe dejar ese campo en blanco.
Verificando la Extracción de Datos
Una vez enviado el comando, ChatGPT se pone a trabajar y prueba su potente algoritmo para extraer los datos solicitados de la página de Glassdoor. Al finalizar, proporciona un archivo CSV con todos los datos recopilados. Como en los casos anteriores, puedes abrir este archivo y verificar la exactitud de los datos extraídos.
Corrigiendo Desviaciones y Problemas
Con páginas como Glassdoor, donde la estructura de los datos puede variar considerablemente, es posible que ChaiGBT pueda confundirse y duplicar algunos datos por errores en la recopilación. En estos casos, se puede indicar a ChaiGBT que ha habido un error y proporcionar las correcciones necesarias.
En resumen, la capacidad de adaptabilidad y precisión de ChatGPT en el web scraping se hace evidente al examinar sus interacciones con páginas web como Glassdoor. La interacción entre ChatGPT y las páginas web se puede ajustar y personalizar de acuerdo con tus necesidades y los datos específicos que estés buscando, lo que lo convierte en una herramienta altamente utilizable y efectiva.
Reevaluando el Enfoque del Scraping Web
La presentación de la técnica de scraping web utilizando el intérprete de código ChatGPT ha reformulado las maneras habituales en las que se ha recogido información de la web.
Sencillez y Flexibilidad
El proceso de web scraping con ChatGPT destaca por su sencillez. Los múltiples pasos que podrían ser necesarios con otras técnicas de scraping se reducen a unos pocos pasos esenciales. Esto incluye la navegación a la página web objetivo, el almacenamiento de la página como un archivo HTML y la carga de este archivo al intérprete de código ChatGPT, seguido de la indicación precisa de los datos a extraer.
Además, ChatGPT proporciona una flexibilidad inigualable. Permite extraer datos variados de muchas páginas distintas simplemente adecuando las indicaciones dadas al intérprete.
Precisión en la Captura de Datos
Uno de los puntos fuertes de ChatGPT es su alto nivel de precisión. En lugar de simplemente raspar a ciegas toda la página, permite especificar exactamente los elementos que queremos extraer. Ya sea que estemos buscando precios de televisores en Amazon o empleos de Data Scientist en Glassdoor, podemos guiar a ChatGPT para capturar exactamente lo que queremos, proporcionando la etiqueta o la ID del elemento HTML correspondiente.
Esta característica convierte a ChatGPT en una herramienta poderosa para el scraping web, al garantizar que los datos extraídos sean precisos, evitando así redundancias o información innecesaria.
Manejo de Datos Faltantes
Otra ventaja importante de utilizar ChatGPT para el web scraping es su capacidad de manejar datos faltantes, una circunstancia común al extraer información de la web. Esto es especialmente útil porque evita que los datos sean incorrectos o engañosos debido a la duplicación de entradas. Simplemente indicándole que deje esa entrada como un dato nulo, ChatGPT salvaguarda la integridad de nuestros datos.
Ampliando las Posibilidades del Scraping Web
ChatGPT no solo simplifica el proceso de scraping web, sino que también expande nuestras posibilidades. Ya no estamos limitados a extraer datos de una única página web. Dado que ChatGPT es capaz de concatenar los datos extraídos de varias páginas en una sola tabla o dataframe, podemos extender nuestro alcance a múltiples páginas, algo que antes requeriría mucho más esfuerzo y tiempo.
Al final, lo que obtenemos es un conjunto de datos limpio, preciso y completos, todo gracias a la eficiencia de ChatGPT. Sea cual sea nuestro objetivo, la extracción de datos eficaz con ChatGPT nos ofrece una solución más rápida, más precisa y mucho más escalable.