Indian Stocks Financial Data scraper avatar

Indian Stocks Financial Data scraper

Pricing

$5.00 / 1,000 stock data

Go to Apify Store
Indian Stocks Financial Data scraper

Indian Stocks Financial Data scraper

Use this Apify scraper to pull comprehensive Indian stock ratios - P/E, ROE, ROCE, SALES, and more - delivered as a ready‑to‑use API feed.

Pricing

$5.00 / 1,000 stock data

Rating

5.0

(2)

Developer

Akash Kumar Naik

Akash Kumar Naik

Maintained by Community

Actor stats

4

Bookmarked

163

Total users

4

Monthly active users

15 days ago

Last modified

Features

Limited permissions

Share

Indian Stocks Financial Data Scraper is an Apify Actor that extracts comprehensive financial data for Indian stocks from Screener.in — financial ratios, growth metrics, and shareholding patterns for any NSE- or BSE-listed company. Provide a stock symbol like RELIANCE, INFY, or TCS and get structured JSON with market cap, P/E ratio, ROE, ROCE, CAGR growth, and shareholding data for dashboards, research tools, and quant pipelines.

What Is Indian Stocks Financial Data Scraper?

Indian Stocks Financial Data Scraper extracts comprehensive financial data from Screener.in, one of India's most popular financial screening platforms. This Actor allows you to programmatically scrape stock ratios, growth metrics, shareholding patterns, and company announcements for any publicly listed Indian company on NSE or BSE.

The easiest way to try it is to provide a stock symbol (like RELIANCE, INFY, or TCS) and the Actor will return structured financial data in JSON format. Perfect for building financial dashboards, investment research tools, or quantitative analysis pipelines.

Key Features

  • Financial Ratios — market cap, P/E ratio, ROE, ROCE, book value, dividend yield
  • Growth Metrics — sales & profit CAGR over 3/5/10 years, stock price appreciation
  • Shareholding Patterns — promoter, FII, DII, and public shareholding percentages
  • Company Announcements — latest corporate announcements and results
  • Instant Financial Data — get key metrics in seconds
  • No API Costs — scrape publicly available data without expensive financial API subscriptions
  • Pay-Per-Event Pricing — only pay for successful results
  • Performance Optimized — retries, timeouts, and graceful error handling

Supported Stock Exchanges

  • NSE (National Stock Exchange)
  • BSE (Bombay Stock Exchange)

Use the NSE symbol (e.g., RELIANCE, not RS).

Use Cases

  • Financial Analysis — get comprehensive ratios for investment research
  • Portfolio Tracking — monitor key metrics for your watchlist
  • Data Pipelines — integrate stock data into your applications
  • Quantitative Analysis — build financial models with historical growth data

Input Parameters

ParameterTypeRequiredDefaultDescription
stockSymbolstringYesINFYStock symbol to scrape (e.g., INFY, RELIANCE, TCS)

Example input:

{
"stockSymbol": "RELIANCE"
}

Sample Output

The Actor outputs structured JSON with comprehensive financial data:

{
"status": "success",
"Symbol": "RELIANCE",
"Company Name": "Reliance Industries Ltd",
"Market Cap": "19,33,249",
"Current Price": "1,429",
"High": "1,551",
"Low": "1,115",
"Stock P/E": "25.8",
"Book Value": "623",
"Dividend Yield": "0.35",
"ROCE": "9.43",
"ROE": "8.51",
"Face Value": "10.0",
"Compounded Sales Growth - 10 Years": "10%",
"Compounded Sales Growth - 5 Years": "10%",
"Compounded Sales Growth - 3 Years": "12%",
"Compounded Sales Growth - TTM": "8%",
"Compounded Profit Growth - 10 Years": "12%",
"Compounded Profit Growth - 5 Years": "10%",
"Compounded Profit Growth - 3 Years": "6%",
"Compounded Profit Growth - TTM": "5%",
"Stock Price CAGR - 10 Years": "20%",
"Stock Price CAGR - 5 Years": "9%",
"Stock Price CAGR - 3 Years": "15%",
"Stock Price CAGR - 1 Year": "8%",
"Return on Equity - 10 Years": "11%",
"Return on Equity - 5 Years": "10%",
"Return on Equity - 3 Years": "9%",
"Return on Equity - Last Year": "8%",
"Promoters": "50.10%",
"FIIs": "19.07%",
"DIIs": "19.36%",
"Public": "11.29%",
"Government": "0.17%",
"Announcement1": "Q1 FY26 results: 19% Jio revenue growth, 11% retail growth",
"Announcement2": "Board meeting scheduled for Q2 results",
"Announcement3": "Annual general meeting announcement",
"Announcement4": "from bse",
"Announcement5": "from nse",
"No. of Shareholders": "47,65,728"
}

Output Fields

CategoryFields
Basic Infostatus, Symbol, Company Name
ValuationMarket Cap, Current Price, High, Low, Stock P/E, Book Value, Face Value
ReturnsROCE, ROE, Dividend Yield
Sales GrowthCompounded Sales Growth - 10 Years, Compounded Sales Growth - 5 Years, Compounded Sales Growth - 3 Years, Compounded Sales Growth - TTM
Profit GrowthCompounded Profit Growth - 10 Years, Compounded Profit Growth - 5 Years, Compounded Profit Growth - 3 Years, Compounded Profit Growth - TTM
Price CAGRStock Price CAGR - 10 Years, Stock Price CAGR - 5 Years, Stock Price CAGR - 3 Years, Stock Price CAGR - 1 Year
ROE HistoryReturn on Equity - 10 Years, Return on Equity - 5 Years, Return on Equity - 3 Years, Return on Equity - Last Year
ShareholdingPromoters, FIIs, DIIs, Public, Government, No. of Shareholders
AnnouncementsAnnouncement1 to Announcement5

How to Use Indian Stocks Financial Data Scraper

  1. Get your API token — sign up at Apify and grab your API token.
  2. Choose a stock symbol — enter any NSE or BSE listed company (e.g., INFY, RELIANCE, TCS).
  3. Run the Actor — execute via API, SDK, or directly in the Apify Console.
  4. Get your data — receive structured JSON with all financial metrics in the dataset.

Connect via API

cURL:

curl -X POST "https://api.apify.com/v2/acts/akash9078/indian-stocks-financial-data-scraper/runs" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{"stockSymbol": "RELIANCE"}'

Python with the Apify Client:

from apify_client import ApifyClient
client = ApifyClient("YOUR_API_TOKEN")
run = client.actor("akash9078/indian-stocks-financial-data-scraper").call(
run_input={"stockSymbol": "RELIANCE"}
)
items = client.dataset(run["defaultDatasetId"]).list_items().items
print(items)

Node.js with the Apify Client:

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_API_TOKEN' });
const run = await client.actor('akash9078/indian-stocks-financial-data-scraper').call({
stockSymbol: 'RELIANCE',
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

Error Handling

The Actor gracefully handles:

  • Invalid stock symbols (returns error with status)
  • Network timeouts (retries automatically)
  • Rate limiting (retries with delay)
  • Missing data fields (returns empty string)

Built-in delays between requests avoid rate limiting, with automatic retries and residential proxy for reliability.

Pricing

This Actor uses Pay-Per-Event pricing - you only pay for successful results:

EventPriceDescription
Actor Start (apify-actor-start)$0.00005Charged once per run
Stock Data (stock-data)$0.005Per successfully scraped stock

Example: Scraping 100 stocks = $0.00005 + (100 × $0.005) = $0.50

Why Use Indian Stocks Financial Data Scraper?

  • Instant Financial Data — get P/E ratios, ROE, ROCE, market cap, and other key metrics in seconds
  • Investment Research — access growth metrics (CAGR) over 3, 5, and 10 years for informed decision-making
  • Portfolio Monitoring — track shareholding patterns of promoters, FIIs, and DIIs for your watchlist
  • No API Costs — scrape publicly available data without expensive financial API subscriptions
  • Apify Platform Benefits — schedule runs, access via API, use proxies, and integrate with workflows

Limitations

  • Accepts a single stock symbol per run; for batch scraping, run the Actor multiple times or integrate it into a workflow
  • Financial data on Screener.in updates daily after market hours — for real-time data, run the scraper after market close
  • Data is sourced from a third-party website (Screener.in) and may lag official exchange feeds

Our scrapers are ethical and do not extract any private user data. They only extract what is publicly available on the website. We believe that web scraping for personal and educational purposes is acceptable when used responsibly. However, you should:

  • Not use the data for commercial purposes without verifying with the source
  • Respect the website's terms of service
  • Not overload the website with requests

For official financial data, always refer to NSE, BSE, and SEBI.

Disclaimer

This scraper is for educational and informational purposes only. Data is sourced from publicly available financial websites. Users should verify all information independently before making investment decisions. The author is not responsible for any losses or damages arising from the use of this data.

FAQ

What stock exchanges are supported?

This scraper supports both NSE (National Stock Exchange) and BSE (Bombay Stock Exchange). Use the NSE symbol (e.g., RELIANCE not RS).

Can I scrape multiple stocks at once?

Currently, this Actor accepts a single stock symbol per run. For batch scraping, you can run the Actor multiple times or integrate it into a workflow.

What if the stock data is not available?

If a stock symbol is invalid or data is unavailable, the Actor returns an error status with details.

How often should I update the data?

Financial data on Screener.in updates daily after market hours. For real-time data, consider running the scraper after market close.

If you need more India market and finance data from Apify, check out my other Apify Actors:


Built and maintained by akash9078 on the Apify platform.