Yahoo Finance Scraper avatar

Yahoo Finance Scraper

Pricing

$1.00 / 1,000 item returneds

Go to Apify Store
Yahoo Finance Scraper

Yahoo Finance Scraper

Scrape Yahoo Finance with no API key: search symbols by name, get real-time price quotes (price, currency, % change, 52-week range), or pull OHLCV price history for stocks, ETFs, indices, FX and crypto. Clean structured JSON.

Pricing

$1.00 / 1,000 item returneds

Rating

0.0

(0)

Developer

Dami's Studio

Dami's Studio

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

8 hours ago

Last modified

Share

Scrape Yahoo Finance with no API key and no login. Three modes:

  • search — find ticker symbols by name (e.g. "apple" → AAPL).
  • quote — current price snapshot for one or more symbols.
  • history — OHLCV price history (candles) over a range/interval.

Works for stocks, ETFs, indices (^GSPC), FX (EURUSD=X) and crypto (BTC-USD).

It calls Yahoo's public JSON endpoints directly (query1/query2.finance.yahoo.com) — no HTML parsing, no scraping fragility.

Input

FieldTypeDefaultNotes
modestringquotesearch | quote | history
querystringSearch text (search mode), e.g. apple
symbolsarrayTickers (quote/history mode), e.g. ["AAPL","MSFT","BTC-USD"]
rangestring1mo1d,5d,1mo,3mo,6mo,1y,5y,max (history)
intervalstring1d1m,5m,1d,1wk,1mo (history; intraday needs short range)
maxItemsinteger100Caps history rows / search results
proxyConfigurationobject{ "useApifyProxy": false }Optional; only needed if Yahoo rate-limits your IP (429)

Examples

{ "mode": "search", "query": "apple", "maxItems": 20 }
{ "mode": "quote", "symbols": ["AAPL", "MSFT", "BTC-USD"] }
{ "mode": "history", "symbols": ["AAPL"], "range": "1mo", "interval": "1d" }

Output

search rows:

{ "symbol": "AAPL", "name": "Apple Inc.", "exchange": "NASDAQ", "quoteType": "EQUITY", "sector": "Technology", "industry": "Consumer Electronics" }

quote rows:

{ "symbol": "AAPL", "price": 201.0, "currency": "USD", "exchange": "NMS", "previousClose": 198.0, "changePct": 1.52, "fiftyTwoWeekHigh": 260.1, "fiftyTwoWeekLow": 169.2, "marketTime": "2026-06-11T20:00:00.000Z" }

history rows (one per bar):

{ "symbol": "AAPL", "date": "2026-05-12T13:30:00.000Z", "open": 210.9, "high": 211.3, "low": 206.7, "close": 207.0, "volume": 51000000 }

Every successful row has ok: true. Failures and empty results come back as ok: false rows with an errorCode (RATE_LIMITED, NOT_FOUND, NO_RESULTS, BAD_INPUT, NETWORK, …) and are never charged.

Pricing

Pay-per-result: one charge per successful row (item). Diagnostic, empty, and rate-limited rows are not charged.

Notes

  • Yahoo rejects generic User-Agents — the actor always sends a browser-like UA and rotates it per retry.
  • Yahoo rate-limits aggressively. On HTTP 429 the actor backs off and retries; persistent limits surface as RATE_LIMITED rows. Enable Apify Proxy if you hit this under high volume.
  • Invalid symbols surface as NOT_FOUND rows (other symbols in the batch still return data).