Web Scraping en Python: Requerimientos y Habilidades Básicas.
Requerimientos previos
- Google Colab o un entorno local con Python 3
- bibliotecas:
- requests para enviar solicitudes HTTP.
- BeautifulSoup (de bs4) para analizar el contenido HTML.
- pandas para estructurar los datos en un formato tabular
Explicación paso a paso
1. Instalación y configuración
Primero, se deben instalar las bibliotecas necesarias utilizando pip. Estas herramientas son fundamentales para enviar solicitudes HTTP, analizar el HTML y manejar los datos de forma estructurada. Si no tienes estas librerías instaladas, puedes ejecutar el comando de la siguiente imagen.
2. Importar Librerías y Definir la URL del sitio web
3. Solicitar y verificar la respuesta HTTP
Con la biblioteca requests, enviamos una solicitud GET al servidor para descargar el contenido de la página. Verificamos el estado de la respuesta:
Con la estructura If se valida si el código de estado no es 200, algo salió mal , se recomienda validar el origen del error según el código de respuesta.
4. Analizar el contenido HTML
El contenido de la página se analiza con BeautifulSoup para facilitar la navegación por el DOM:
5. Extraer los títulos y precios
Los títulos de los libros están dentro de etiquetas <h3>. Usamos find_all para buscar todas las etiquetas h3 y extraemos el atributo title:
Los precios están en etiquetas <p> con la clase price_color:
De acuerdo a esto es necesario agregar el siguiente código con el fin de buscar cada etiqueta de html con su respectiva clase, como es el caso de la etiqueta <p>.
Con los precios y libros encontrados procedemos a extraerlos limpiando y organizando los datos, extrayendo el atributo 'title' de cada etiqueta <a>, para los precios limpiamos el texto utilizando la función strip().
6. Organizar los datos en un DataFrame
Utilizamos pandas para estructurar los datos en un DataFrame y facilitar su manejo:
7. Validar y Guardar los resultados
Si hay no errores guardamos los datos en un archivo CSV, esto nos permite reutilizar los datos para análisis posteriores.
Resultado final
Tras ejecutar el código, obtendremos una tabla con los títulos y precios de los libros. También se generará un archivo CSV llamado "libros_books_toscrape.csv".
Excelente explicación.
ResponderBorrar