BennyThadikaran / NseIndiaApi

Unofficial Python Api for NSE India stock exchange

Home Page:https://pypi.org/project/nse/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

πŸ’° NseIndiaApi

An unofficial Python API for the NSE India stock exchange.

Python version: >= 3.8

If you ❀️ my work so far, please 🌟 this repo.

πŸ‘½ Documentation

https://bennythadikaran.github.io/NseIndiaApi

Updates

v0.2.9 Added new method to get NSE circulars. See Docs

v0.2.8: Add methods for listing upcoming, current and past IPOs. See Docs

πŸ”₯ Usage

Install with Pip

pip install -U nse

The class accepts a single argument download_folder, a str filepath, or a pathlib object. The folder stores cookie and any downloaded files.

Simple example

from nse import NSE
from pathlib import Path

# Working directory
DIR = Path(__file__).parent

nse = NSE(download_folder=DIR)

status = nse.status()

advDec = nse.advanceDecline()

nse.exit() # close requests session

Using with statement

with NSE(download_folder=DIR) as nse:
    status = nse.status()

    advDec = nse.advanceDecline()

Catching errors

from nse import NSE
from datetime import datetime

with NSE('./') as nse:
    try:
        bhavFile = nse.equityBhavcopy(date=datetime.now())
        dlvFile = nse.deliveryBhavcopy(date=datetime.now())
        raise RuntimeError('Some error')  # force an exception
    except RuntimeError as e:
        # continue execution or exit the script
        print(repr(e))

    # execution continues if handled without exit
    actions = nse.actions()

# NSE request session closed - continue processing

Samples folder

The src/samples folder contains sample outputs of various methods. The filenames match the method names. The output has been truncated in some places but demonstrates the overall structure of responses.

About

Unofficial Python Api for NSE India stock exchange

https://pypi.org/project/nse/

License:GNU General Public License v3.0


Languages

Language:Python 99.3%Language:Dockerfile 0.7%