En este proyecto, vamos a obtener y analizar los datos sobre el beneficio de Tesla, que almacenaremos previamente en un DataFrame y en una base de datos de sqlite.
Asegúrate de que tienes instalados los paquetes pandas
y requests
de Python para poder trabajar en el proyecto. En el caso de que no tengas las librerías instaladas, ejecuta en la consola:
pip install pandas requests
La descarga del HTML de la página web se realizará con la librería requests
, como vimos en la teoría del módulo.
La página web que queremos scrapear es la siguiente: https://ycharts.com/companies/TSLA/revenues. Recopila y almacena información sobre el crecimiento de la compañía cada tres meses, desde junio de 2009. Almacena el texto scrapeado de la web en alguna variable.
El siguiente paso para comenzar con la extracción de la información es transformarlo en un objeto estructurado. Hazlo utilizando BeautifulSoup
. Una vez hayas interpretado el HTML correctamente, analízalo para:
- Buscar todas las tablas.
- Encontrar la tabla con la evolución trimestral.
- Almacena los datos en un DataFrame.
A continuación, limpia las filas para obtener los valores limpios eliminando $
y las comas. Elimina también aquellas que estén vacías o no tengan información.
Crea una instancia vacía de la base de datos e incluye en ella los datos limpios, como vimos en el módulo de bases de datos. Una vez tengas una base de datos vacía:
- Crea la tabla.
- Inserta los valores.
- Almacena (
commit
) los cambios.
¿Qué tipos de visualizaciones podemos realizar? Propón al menos 3 y muéstralos.