Web Scraping con Python.

Ver proyecto en GitHub


Proyecto en GitHub


Introducción

El web scraping es una técnica poderosa utilizada para extraer datos de sitios web de manera automatizada. En este proyecto, se emplea el web scraping para recopilar información relevante del sitio web de la Universidad Nacional de San Marcos. Esto incluye datos sobre postulantes y las carreras universitarias ofrecidas por esta prestigiosa institución educativa. Beneficios del Web Scraping El uso de técnicas de web scraping permite acceder y analizar datos que de otro modo serían difíciles de obtener manualmente. Al automatizar el proceso de extracción, podemos obtener datos en tiempo real, mantener actualizada la información y facilitar su análisis y visualización. Objetivos del Proyecto

  • Extraer datos públicos de la Universidad Nacional de San Marcos utilizando técnicas de web scraping.
  • Almacenar los datos extraídos en una base de datos PostgreSQL para facilitar su gestión y análisis.
  • Crear informes interactivos con Power BI para visualizar y analizar los datos de manera efectiva.


  • Análisis del Sitio Web:

    Inicié el proyecto con un exhaustivo análisis de la estructura del sitio web objetivo. Este paso fue fundamental para comprender la organización de los datos y identificar las páginas clave que contienen la información necesaria para el scraping. Este proceso incluyó explorar la jerarquía del sitio, revisar el diseño de las páginas y estudiar las rutas de acceso a los datos requeridos.

    Selección de Herramientas:

    Para desarrollar este proyecto, utilicé las siguientes herramientas:

  • Python: Principalmente para el desarrollo del web scraping y la manipulación de datos.
  • PostgreSQL: Se empleó para almacenar los datos extraídos del sitio web, proporcionando una gestión eficiente de la base de datos.
  • Power BI: Se utilizó para crear informes interactivos y visualizaciones atractivas basadas en los datos almacenados en PostgreSQL, facilitando así el análisis de los datos obtenidos.
  • Desarrollo del Web Scraping:

    Desarrollé el código en Python utilizando las bibliotecas BeautifulSoup y Requests para extraer de manera eficiente la información relevante del sitio web de la Universidad Nacional de San Marcos.

    Almacenamiento de los Datos:

    Los datos extraídos fueron almacenados de manera eficiente en una base de datos PostgreSQL.

    Limpieza y Transformación de Datos:

    Posteriormente a la extracción y almacenamiento de los datos, se llevó a cabo un riguroso proceso de limpieza y transformación. Este proceso aseguró la coherencia y calidad de los datos mediante la eliminación de duplicados, la corrección de errores y la estandarización de formatos.

    Desarrollo de Informes con Power BI:

    Para el análisis y visualización de los datos, se utilizó Power BI. Esta herramienta permitió la creación de informes interactivos y visualizaciones basadas en los datos almacenados en PostgreSQL, facilitando la generación de valiosos insights a partir de los datos extraídos.

    Ejemplo de Fragmento de Código



    Lista de URLs analizadas

    En esta sección, se presenta la lista de URLs principales utilizadas como punto de partida para el análisis y desarrollo del proyecto. Cada una de estas URLs contiene enlaces a páginas internas que también fueron analizadas.

  • Examen de admisión 2023-1

  •      https://admision.unmsm.edu.pe/ Res_20231_Area_A/
    Esta URL principal contiene enlaces a páginas de categorías, tales como:

         https://admision.unmsm.edu.pe/ Res_20231_Area_A/ A.html      https://admision.unmsm.edu.pe/ Res_20231_Area_A/ A/011/0.html
  • Examen de admisión 2023-2

  •      https://admision.unmsm.edu.pe/ WebsiteExa_20232/
    Esta URL principal contiene enlaces a páginas de categorías, tales como:

         https://admision.unmsm.edu.pe/ WebsiteExa_20232/ A.html      https://admision.unmsm.edu.pe/ WebsiteExa_20232/ A/011/0.html
  • Examen de admisión 2024-1

  •      https://admision.unmsm.edu.pe/ Website20241/
    Esta URL principal contiene enlaces a páginas de categorías, tales como:

         https://admision.unmsm.edu.pe/ Website20241/A.html      https://admision.unmsm.edu.pe/ Website20241/ A/011/0.html
  • Examen de admisión 2024-2

  •      https://admision.unmsm.edu.pe/ Website20242/
    Esta URL principal contiene enlaces a páginas de categorías, tales como:

         https://admision.unmsm.edu.pe/ Website20242/A.html      https://admision.unmsm.edu.pe/ Website20242/A/ 011/0.html


    Capturas de Pantalla de las Páginas Analizadas - Examen de admisión 2024-2


    1. Captura de la Página Principal:
    2. Captura de la Página 2:
    3. Captura de la Página 3:

    Tabla para almacenar los datos




    Informe PBI desarrollado




    Informe PBI desarrollado



    Repositorio del Proyecto en GitHub

    Para obtener más detalles sobre cada uno de los pasos y configuraciones, junto con la documentación completa del proceso, puede visitar el Repositorio del Proyecto en GitHub, el cual contiene todas las fuentes necesarias para desplegar el proyecto.