Una Perla Olvidada: La función “info” de YahooFinance
Exprimiendo Yahoo finance por encima de sus posibilidades
Hace muchos meses no necesitábamos más que la librería “yfinance” en Python para acceder prácticamente a la totalidad del contenido de la web de YahooFinance.
Desgraciadamente, esto dejó de ser así hace algunos meses, ya que se realizaron cambios en la página para prevenir el acceso a algunos contenidos.
En este artículo vamos a recuperar la función info, que permitía echar un vistazo rápido a métricas clave de cualquier empresa con sólo una línea.
Vamos a reconstruir una función info actualizada. La llamaremos igual. La parte inicial, como siempre, es hacer una petición a la URL donde contiene toda la info que buscamos, descargamos todo el texto y lo “parseamos” a html.
A continuación filtramos por los encabezados de las tablas y buscamos los datos de tablas como filas. Lo introducimos en un DataFrame() y le añadimos el nombre de las columnas y el del ticker.
Ya podemos disponer de la información de una forma tan sencilla como llamando a nuestra función y especificando el ticker de la compañía
Info(‘AAPL’)
Por ejemplo:
¿Qué tal si hacemos un pequeño bucle para descargarnos la información para los componentes actuales del DWJ?
Utilizamos la función si.tickers_dow(), que busca dentro de la wikipedia por los 30 tickers del índice Dow Jones y vamos utilizando nuestra función info compañía a compañía, descargando todo y concatenándolo por columnas.
Ya tenemos toda la información en una tabla que posteriormente podemos formatear en un Excel (*xlsx) con la función de pandas to_excel().
Os dejo un Google Colab donde probar todo esto:
https://colab.research.google.com/drive/1eeDh33jGOJApmNW41DZDreIj24QXqd_U?usp=sharing
Tened en cuenta que para algunos datos sólo está disponible la columna “Current”, sin más histórico. Por eso veremos muchos ‘N/A’ dentro de nuestro DataFrame().
Si quieres ver este post explicado paso a paso, te dejo el enlace de youtube!
Si quieres seguir aprendiendo, te dejo mis datos de mi web, youtube, discord y twitter. Sigueme!
Usuario del substack: @Gsnchez. Co-fundador de BQuant. www.bquantfinance.com
Youtube: http://youtube.com/@Gsnchez
Discord: https://discord.gg/PE43PFeJyy
Twitter: @Gsnchez