Google Finance Scraper - Live Quotes and Key Statistics
Pricing
from $2.00 / 1,000 per-run start fees
Google Finance Scraper - Live Quotes and Key Statistics
Live prices and the full key-statistics block from Google Finance: open, day range, market cap, volume, dividend, P/E, 52-week range, EPS, beta, shares outstanding and headcount. Any exchange, one row per ticker.
Google Finance Scraper
Live quotes and the full key-statistics block from Google Finance. One row per ticker with the price, the change, and everything Google shows beside it: open, day high and low, market cap, volume and average volume, dividend and yield, P/E, the 52-week range, EPS, beta, shares outstanding and headcount.
Pass AAPL or AAPL:NASDAQ. A ticker that names its exchange keeps it; one
that does not falls back to Default exchange, which starts at NASDAQ.
Name the exchange for anything outside US tech
This is the input that decides whether you get a quote at all. ASML on
NASDAQ and ASML on AMS are different listings at different prices in
different currencies, and a bare ticker cannot tell them apart.
So write ASML:AMS, SHEL:LON, SAP:ETR, 7203:TYO. If your whole list is
one market, set Default exchange once and pass bare tickers.
Numbers you can sort, and the text you saw
Every large figure comes back twice. market_cap is 4770000000000 and
market_cap_text is "4.77T". The same holds for volume, average volume,
shares outstanding and headcount.
That is deliberate: a market cap of "4.77T" is unsortable in a spreadsheet,
and a market cap of 4770000000000 is unreadable in a report. You get both and
pick per column.
currency is read off the page rather than inferred from the exchange, because
a listing can quote in a currency the exchange's country does not use, and an
inferred value would be wrong without ever looking wrong.
Where a cell is empty
Google writes - where it has no figure, and those arrive as null rather than
zero. A P/E of null means the company has no meaningful one, usually because
it has no earnings; a P/E of 0 would be a claim nobody made.
previous_close and cdp_score appear on some listings and not others.
Errors
| Code | Meaning |
|---|---|
blocked | No attempt got a quote page back |
not_parsed | A quote page arrived with no price on it |
bad_input | No ticker was given |
blocked and not_parsed are different problems. The first is us not getting
served and is worth retrying; the second means the page came back but the
layout moved, which is a bug report rather than a retry.
Raise Attempts per ticker if you see blocked. Only tickers that were
actually quoted are billed.
Freshness
as_of carries the timestamp exactly as the page states it, including the
market's own timezone. Outside trading hours that is the closing price, and
the after-hours figure is a different number on the same page which this actor
does not report as the price.
Related actors
For company filings see the SEC EDGAR actor, and for what a company is advertising see the ads-library actors.