I tried to scrape the quarterly financial reports (income statement, balance sheet and cash flow statement) for >500 companies via Yahoo Finance. The problem I face is that the scrapers yahoofinancials or yahoo_fin retreive values which are incorrect.
E.g. for the ticker 'ABB', they retreive an EBIT of CHF 512'000'000 on the 31.12.2020. However, on the company's page, the respecitve EBIT is CHF 299,000 k.
Did anybody else experience the same issues and find a solution?
You can check out a package called yahooquery. Disclaimer: I am the author of the package.
from yahooquery import Ticker
t = Ticker('ABB')
df = t.income_statement(frequency='q')
df[['asOfDate','EBIT']]
asOfDate EBIT
symbol
ABB 2019-12-31 663,000,000.0
ABB 2020-03-31 427,000,000.0
ABB 2020-06-30 615,000,000.0
ABB 2020-09-30 -260,000,000.0
ABB 2020-12-31 299,000,000.0
ABB 2020-12-31 1,081,000,000.0
Also, to retrieve all of the financial reports for one symbol in one request, do the following:
df = t.all_financial_data('q')