Yahoo Finance Scraper - 10 modes avatar

Yahoo Finance Scraper - 10 modes

Pricing

Pay per event

Go to Apify Store
Yahoo Finance Scraper - 10 modes

Yahoo Finance Scraper - 10 modes

Yahoo Finance pages for any ticker: summary quote, 60+ key stats, profile, income statement TTM+4y, analyst estimates, Top-10 holders, full option chain, markets/sector screener (gainers/losers/sectors). Use when an agent needs stock fundamentals, analyst targets, or sector screening.

Pricing

Pay per event

Rating

0.0

(0)

Developer

An Tan Huynh

An Tan Huynh

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

2 days ago

Last modified

Share

Yahoo Finance Scraper

Scrape eight Yahoo Finance pages in one actor — seven per-ticker sub-pages plus a markets/sector screener:

ModeURLWhat you get
summary/quote/<SYM>/Price, change, 15 At-a-Glance stats (Prev Close, Open, Bid, Ask, Day's / 52 Week range, Volume, Avg Vol, Market Cap, Beta 5Y, PE Ratio TTM, EPS TTM, Earnings Date, Forward Dividend & Yield, 1y Target Est)
key_stats/quote/<SYM>/key-statistics/60+ valuation rows (Market Cap, Enterprise Value, Trailing P/E, Forward P/E, PEG, Price/Sales, Price/Book, EV/Revenue, EV/EBITDA, Profit Margin, Operating Margin, ROA, ROE, Revenue, EBITDA, EPS, Total Cash, Total Debt, OCF, LFCF, 52W Change, 50/200D Moving Average, Shares Outstanding, Float, Insider / Institution %, Short interest, Payout Ratio, Dividend dates, Last Split...)
profile/quote/<SYM>/profile/Address + phone + website + Sector + Industry + Full-Time Employees + Business Summary
financials/quote/<SYM>/financials/Income statement — TTM + 4 fiscal years. Total Revenue, Cost of Revenue, Gross Profit, Operating Expense, Operating Income, Pretax Income, Tax Provision, Net Income, Diluted EPS, Basic EPS, EBITDA, EBIT and more
analysis/quote/<SYM>/analysis/Earnings Estimate (next qtr / next year), Revenue Estimate, Earnings History, EPS Trend, EPS Revisions and Growth Estimates vs peers
holders/quote/<SYM>/holders/Major Holders Breakdown (% insider / institutions / float / count), Top-10 Institutional Holders (Blackrock, Vanguard, State Street…), Top-10 Mutual Fund Holders — all with shares + date + % out + value
options/quote/<SYM>/options/Full option chain for the nearest expiration — calls + puts tables with contract symbol, strike, last trade, bid/ask, change, volume, open interest, implied volatility (~90-180 contracts/ticker for US stocks)
screener/markets/stocks/{gainers,losers,…}/
or /sectors/<slug>/
Markets or sector page as one row with embedded ticker list — symbol, name, price, change %, volume, market cap, P/E, 52w range (or sector table: market weight + YTD return + analyst rating)
allall 7 per-ticker aboveMerged bundle row per ticker, priced at a 50% bundle discount

Works for US stocks (AAPL), international tickers with suffix (7203.T, BABA, RIO.AX), ETFs (SPY), indexes (^GSPC, ^DJI, ^IXIC), crypto (BTC-USD, ETH-USD) and FX pairs (EURUSD=X, GBPUSD=X). International tickers may have fewer holders/options rows — Yahoo doesn't surface those for every exchange.

Pricing (pay-per-event)

EventPriceWhat triggers it
summary$0.001One summary row (one ticker)
key_stats$0.001One key statistics row
profile$0.001One profile row
financials$0.001One financials row
analysis$0.001One analysis row
holders$0.001One holders row (major + Top-10 institutional + Top-10 MF)
options$0.002One option-chain row (full calls + puts for the nearest expiration)
screener$0.002One screener row (markets or sector page with embedded ticker list)
all$0.004One bundled row with all 7 per-ticker sub-pages: 6 × $0.001 + 1 × $0.002 options = $0.008 unbundled, so 50% off

Example runs:

  • tickers: ["AAPL"], mode: "summary" → 1 row, $0.001
  • tickers: ["AAPL", "MSFT", "NVDA"], mode: "financials" → 3 rows, $0.003
  • tickers: ["AAPL"], mode: "options" → 1 row (189 contracts), $0.002
  • tickers: ["AAPL"], mode: "all" → 1 bundled row (7 sub-pages), $0.004
  • tickers: ["AAPL"], modes: ["holders", "options"] → 2 rows, $0.003
  • mode: "screener", screeners: ["gainers", "sector-technology"] → 2 rows, $0.004

Input

{
"tickers": ["AAPL", "MSFT", "NVDA"],
"mode": "summary"
}
  • tickers (required for per-ticker modes) — list of Yahoo Finance symbols. Dict form {"symbol": "7203.T"} is also accepted.
  • mode (default summary) — one of summary, key_stats, profile, financials, analysis, holders, options, screener, all.
  • modes (optional) — fine-grained override. When non-empty, overrides mode and emits one dataset row per (ticker, sub-page). Items must be in the 7 per-ticker sub-pages above (not screener / all).
  • screeners (required when mode="screener") — list of screener keys. Supported: gainers, losers, most-active, trending, 52-week-gainers, 52-week-losers, crypto, etfs-gainers, etfs-losers, and sector-<slug> for the 11 Yahoo sectors (sector-technology, sector-healthcare, sector-financial-services, sector-consumer-cyclical, sector-communication-services, sector-industrials, sector-consumer-defensive, sector-energy, sector-basic-materials, sector-real-estate, sector-utilities).
  • proxyConfiguration (optional) — defaults to Apify datacenter with apifyProxyCountry=US. Yahoo Finance 404s / soft-blocks non-US IPs for the full SSR; keep the country override unless you have a good reason to change it.

Sample output

summary row (AAPL)

{
"symbol": "AAPL",
"mode": "summary",
"name": "Apple Inc.",
"exchange": "NasdaqGS - Nasdaq Real Time Price",
"currency": "USD",
"price": 342.00,
"change": -0.96,
"changePercent": -0.28,
"marketState": "At close: 4:00:01 PM EDT",
"previousClose": 342.96,
"openPrice": 346.95,
"volume": 39605715,
"avgVolume": 44865393,
"marketCap": 4991000000000,
"beta": 1.07,
"peRatio": 39.04,
"eps": 8.76,
"oneYearTarget": 329.38,
"stats": {
"previousClose": "342.96",
"open": "346.95",
"bid": "343.01 x 400",
"ask": "347.98 x 400",
"dayRange": "341.60 - 347.85",
"fiftyTwoWeekRange": "243.42 - 348.15",
"volume": "39,605,715",
"avgVolume": "44,865,393",
"marketCap": "4.991T",
"beta5YMonthly": "1.07",
"peRatioTtm": "39.04",
"epsTtm": "8.76",
"earningsDate": "Nov 2, 2026",
"forwardDividendYield": "-- (0.32%)",
"oneYearTargetEst": "329.38"
}
}

profile row (AAPL)

{
"symbol": "AAPL",
"mode": "profile",
"address": {
"line1": "One Apple Park Way",
"line2": "Cupertino, CA 95014",
"country": "United States",
"full": "One Apple Park Way, Cupertino, CA 95014, United States"
},
"phone": "(408) 996-1010",
"website": "https://www.apple.com",
"sector": "Technology",
"industry": "Consumer Electronics",
"fullTimeEmployees": 150000,
"description": "Apple Inc. designs, manufactures, and markets smartphones, personal computers, tablets, wearables..."
}

financials row (AAPL)

{
"symbol": "AAPL",
"mode": "financials",
"columns": ["9/30/2022", "9/30/2023", "9/30/2024", "9/30/2025", "TTM"],
"body": {
"totalRevenue": {
"label": "Total Revenue",
"values": ["394.33B", "383.29B", "391.04B", "416.16B", "466.82B"],
"numbers": [394330000000, 383290000000, 391040000000, 416160000000, 466820000000]
},
"operatingIncome": {
"values": ["119.44B", "114.3B", "123.22B", "133.05B", "154.86B"],
"numbers": [119440000000, 114300000000, 123220000000, 133050000000, 154860000000]
},
"netIncomeCommonStockholders": {
"values": ["99.8B", "97B", "93.74B", "112.01B", "128.93B"]
},
"dilutedEps": {"values": ["6.11", "6.13", "6.08", "7.46", "8.76"]}
},
"totalRevenueTtm": 466820000000,
"operatingIncomeTtm": 154860000000,
"netIncomeCommonStockholders": 112010000000,
"dilutedEps": 7.46
}

analysis row (AAPL)

{
"symbol": "AAPL",
"mode": "analysis",
"earningsEstimate": {
"columns": ["Current Qtr. (Sep 2026)", "Next Qtr. (Dec 2026)", "Current Year (2026)", "Next Year (2027)"],
"rows": {
"No. of Analysts": ["27", "22", "39", "40"],
"Avg. Estimate": ["1.98", "2.9", "8.82", "9.57"]
}
},
"growthEstimates": {
"columns": ["Current Qtr.", "Next Qtr.", "Current Year", "Next Year"],
"rows": {
"AAPL": {"values": ["7.14%", "1.31%", "18.38%", "8.45%"]},
"S&P 500": {"values": ["24.57%", "26.56%", "32.41%", "16.50%"]}
}
}
}

holders row (AAPL)

{
"symbol": "AAPL",
"mode": "holders",
"majorHolders": {
"percentSharesInsider": {"text": "1.65%", "number": 1.65},
"percentSharesInstitutions": {"text": "66.33%", "number": 66.33},
"percentFloatInstitutions": {"text": "67.44%", "number": 67.44},
"numberOfInstitutionsHolding": {"text": "7,697", "number": 7697}
},
"percentSharesInsider": 1.65,
"percentSharesInstitutions": 66.33,
"topInstitutionalHolders": [
{"holder": "Blackrock Inc.", "shares": "1.16B", "sharesNumber": 1160000000, "dateReported": "Jun 30, 2026", "percentOut": "7.97%", "percentOutNumber": 7.97, "value": "397,744,953,138", "valueNumber": 397744953138},
{"holder": "Vanguard Capital Management LLC", "shares": "959.11M", "sharesNumber": 959110000, "dateReported": "Jun 30, 2026", "percentOut": "6.57%", "percentOutNumber": 6.57, "value": "328,014,905,562", "valueNumber": 328014905562}
],
"topMutualFundHolders": [...]
}

options row (AAPL, nearest expiration)

{
"symbol": "AAPL",
"mode": "options",
"expiration": "2026-10-16",
"callsCount": 94,
"putsCount": 95,
"calls": [
{"side": "call", "inTheMoney": true, "contractName": "AAPL261016C00130000",
"strike": "130", "strikeNumber": 130,
"lastTradeDate": "10/15/2026 2:27 PM",
"lastPrice": "212.22", "lastPriceNumber": 212.22,
"bid": "211.35", "ask": "213.25",
"change": "-2.25", "percentChange": "-1.05%",
"volume": "25", "volumeNumber": 25,
"openInterest": "38", "openInterestNumber": 38,
"impliedVolatility": "563.67%", "impliedVolatilityNumber": 563.67}
],
"puts": [...]
}

screener row (markets gainers)

{
"symbol": "gainers",
"mode": "screener",
"screener": "gainers",
"rowsCount": 25,
"rows": [
{"symbol": "RGC", "name": "Regencell Bioscience Holdings Limited",
"price": 9.52, "change": 1.41, "percentChange": 17.39,
"volume": 1902000, "avgVolume3Month": 197307,
"marketCap": 4721000000, "peRatioTtm": null,
"fiftyTwoWeekPercentChange": -54.82,
"fiftyTwoWeekLow": 4.51, "fiftyTwoWeekHigh": 69.0}
]
}

Tips

  • Use mode: "all" when you want everything in one row (great for MCP / RAG — one JSON blob per ticker, 7 sub-pages, 50% off vs billing each separately).
  • Use modes: ["summary", "financials"] when you only want a subset — you only pay for what you ask.
  • Set apifyProxyCountry to US (default). Yahoo returns a trimmed SSR shell to non-US IPs that strips the yf-11op525 quote-statistics container.
  • Rate: the actor sleeps 0.4-0.8s between fetches to stay under Yahoo's per-IP throttle. 100 tickers in summary mode take about 2 minutes; mode: "all" is ~9× slower per ticker.
  • Fields are camelCase (forwardAnnualDividendYield) and number / text doublets are provided for every key statistic so you can either compute math on the number or render the exact Yahoo string.
  • International tickers (e.g. 7203.T) may have smaller holders/options tables — Yahoo doesn't surface the full set for non-US exchanges. The actor still succeeds and returns whatever Yahoo renders.