Nse Bse Stock Scraper avatar

Nse Bse Stock Scraper

Pricing

from $10.00 / 1,000 results

Go to Apify Store
Nse Bse Stock Scraper

Nse Bse Stock Scraper

Extract real-time stock data from NSE & BSE India. Get current prices, historical data, fundamentals, 52-week high/low, P/E ratio, market cap & more. Perfect for traders, analysts, and fintech apps.

Pricing

from $10.00 / 1,000 results

Rating

0.0

(0)

Developer

Praveen Kumar

Praveen Kumar

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

2

Monthly active users

3 days ago

Last modified

Share

NSE BSE Stock Data Scraper

Extract real-time and historical stock data from NSE (National Stock Exchange) and BSE (Bombay Stock Exchange) India. Built for traders, analysts, and fintech applications.

What it does

  • Live Quotes - Current price, change, open, high, low, volume, 52-week range
  • Fundamental Data - Market cap, P/E ratio, traded value, impact cost
  • Historical OHLCV - Open, High, Low, Close, Volume for any date range
  • Both Exchanges - Fetch from NSE, BSE, or both simultaneously

Input

FieldTypeDefaultDescription
symbolsarrayrequiredStock symbols (e.g., ["RELIANCE", "TCS", "INFY"])
exchangeenumNSENSE, BSE, or BOTH
dataTypeenumquotequote, historical, fundamentals, or all
fromDatestring1 month agoStart date for historical data (YYYY-MM-DD)
toDatestringtodayEnd date for historical data (YYYY-MM-DD)

Example input

{
"symbols": ["RELIANCE", "TCS", "INFY"],
"exchange": "NSE",
"dataType": "all",
"fromDate": "2026-02-01",
"toDate": "2026-03-01"
}

Output

Each stock produces a dataset item:

{
"symbol": "RELIANCE",
"companyName": "Reliance Industries Limited",
"exchange": "NSE",
"currentPrice": 2450.50,
"change": 25.30,
"changePercent": 1.04,
"open": 2430.00,
"high": 2460.75,
"low": 2425.10,
"previousClose": 2425.20,
"volume": 8523410,
"marketCap": 1659432.50,
"pe": 28.5,
"weekHigh52": 2856.15,
"weekLow52": 2180.00,
"fundamentals": {
"totalTradedVolume": 8523410,
"totalTradedValue": 20834.56,
"totalMarketCap": 1659432.50,
"freeFloatMarketCap": 829716.25,
"impactCost": 0.01
},
"historicalData": [
{
"date": "2026-03-01",
"open": 2430.00,
"high": 2460.75,
"low": 2425.10,
"close": 2450.50,
"volume": 8523410
}
],
"scrapedAt": "2026-03-07T12:00:00.000Z"
}

Failed symbols are recorded with an error field:

{
"symbol": "INVALID",
"exchange": "NSE",
"error": "Response code 404 (Not Found)",
"scrapedAt": "2026-03-07T12:00:00.000Z"
}

How it works

  1. NSE: Initializes a browser-like session to obtain cookies (NSE requires valid cookies for API access), then calls NSE's JSON APIs for quote, trade info, and historical data.
  2. BSE: Searches for the stock symbol via BSE's suggest API to get the scrip code, then fetches quote and historical data using BSE's public APIs.
  3. Rate limiting: 1.5-second delay between symbols to avoid being blocked.

Use cases

  • Algorithmic trading - Feed real-time price data into trading bots
  • Portfolio tracking - Monitor your Indian stock holdings
  • Financial research - Analyze historical price trends and fundamentals
  • Screener tools - Build custom stock screeners with P/E, market cap, etc.
  • Data pipelines - Integrate Indian stock data into dashboards and reports

Running locally

$apify run --input='{"symbols":["RELIANCE","TCS"],"exchange":"NSE","dataType":"quote"}'

Deploy to Apify

apify login
apify push

Technical notes

  • NSE India blocks requests without proper cookies/headers. This actor handles session initialization automatically.
  • BSE uses scrip codes internally; the actor resolves symbols to scrip codes via BSE's search API.
  • Historical data defaults to the last 1 month if no date range is specified.
  • Uses got-scraping for HTTP requests with browser-like fingerprints.
  • No browser dependencies required - pure HTTP for fast execution and low resource usage.

Technology