Forum Discussion

db042190's avatar
db042190
Impactful Individual
3 years ago
Solved

python's yfinance returns data from command line but i dont even get a dataset in pbi

Hi , v-binbinyu shared this with us...   https://towardsdatascience.com/best-5-free-stock-market-apis-in-2019-ad91dddec984 .

 

I was able to list stock ticker MSFT history from my pc's command line but i show nothing (not even a dataset) when i go thru the same steps in setting up a pbi python connector.  Can someone help?

 

my script was entered in pbi as follows but even after reboot i couldnt get a dataset in pbi:

 

import yfinance as yf
msft = yf.Ticker("MSFT")
msft.history(period="max")

 

 

 

 

  • i'm not sure if the history method can ever act in this capacity and i did see pbi alternatives that use web sources instead of python for this same purpose but this seems to work...i dont think dataset is a key word.  The last 2 statements apparently add columns to what the download method already offers.  I'll be looking up/for ways to make the download method show more tickers and the symbol itself rather than the hardcoded stock name.

     

    import yfinance as yf

    dataset=yf.download('MSFT','2010-01-01','2023-06-30')

    dataset["Date"]=dataset.index

    dataset["Stock"]="Microsoft"

     

2 Replies

  • db042190's avatar
    db042190
    Impactful Individual

    i'm not sure if the history method can ever act in this capacity and i did see pbi alternatives that use web sources instead of python for this same purpose but this seems to work...i dont think dataset is a key word.  The last 2 statements apparently add columns to what the download method already offers.  I'll be looking up/for ways to make the download method show more tickers and the symbol itself rather than the hardcoded stock name.

     

    import yfinance as yf

    dataset=yf.download('MSFT','2010-01-01','2023-06-30')

    dataset["Date"]=dataset.index

    dataset["Stock"]="Microsoft"

     

  • db042190's avatar
    db042190
    Impactful Individual

    the history method can do it too.  Had I coded my script like this, it would have worked too.  Notice an object (dataset2) is assigned/points at the results of the history method.

     

    import yfinance as yf
    msft = yf.Ticker("MSFT")
    dataset2=msft.history(period="max")