'pyfinance dividends and documentation
I'm trying to use pyfinance to pull data, I have run into issues with the dividends. Below is the code, the error I et is:
import yfinance as yf
print('Enter Ticker:')
symbol = input()
symbol = yf.Ticker(symbol)
print('Forward PE:')
print(symbol.info['forwardPE'])
print('Dividends:')
info = yf.Ticker(symbol).info
div = info.get('trailingAnnualDividendYield')
print(div)
Does anyone have documentation for pyfinance? What I have been able to find is slim, how can I view the modules/classes/etc
Error from python interpreter:
Enter Ticker:
c
Forward PE:
8.224477
Dividends:
Traceback (most recent call last):
File "/home/user/Desktop/test.py", line 10, in <module>
info = yf.Ticker(symbol).info
File "/home/user/.local/lib/python3.9/site-packages/yfinance/base.py", line 49, in __init__
self.ticker = ticker.upper()
AttributeError: 'Ticker' object has no attribute 'upper'
Solution 1:[1]
You assign symbol = yf.Ticker(symbol)
, so symbol
is yfinance.Ticker object
now, not a string. And then you call yf.Ticker(symbol).info
(which is not needed) that leads to an error. Don't save on variables names.
import yfinance as yf
print('Enter Ticker:')
symbol = input()
s = yf.Ticker(symbol)
print('Forward PE:')
print(s.info['forwardPE'])
print('Dividends:')
div = s.info.get('trailingAnnualDividendYield')
print(div)
And the results:
Enter Ticker:
ibm
Forward PE:
12.553453
Dividends:
0.049131215
Solution 2:[2]
This fixed it:
import yfinance as yf
print('Enter Ticker:')
x = input()
symbol = x
symbol = yf.Ticker(symbol)
info = yf.Ticker(x).info
div = info.get('trailingAnnualDividendYield')
print('Forward PE:')
print(symbol.info['forwardPE'])
print('Dividend:')
print(div)
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
Solution | Source |
---|---|
Solution 1 | Yuri Ginsburg |
Solution 2 | Tomerikoo |