我正在使用NSEPY API,我想列出漂亮的50张指数中包含的股票。
我正在获取单个股票的历史数据,但没有得到漂亮的50只股票(总共50只股票)。我要检索它。
import nsepy
from nsepy import get_history
from datetime import date
data = get_history(symbol="IOC", start=date(2017,1,1), end=date(2019,2,15))
data[['Close']].plot()
我想要50只股票的结果,但是我正在获得用符号给出的特定棒的结果
答案 0 :(得分:0)
根据NSEpy documentation,您没有任何使用API从索引中列出公司的方法。
但是,您可以下载包含50个公司列表here的csv。
要使用Python读取文件并使用Pandas列出公司,代码为:
import pandas as pd
import io
import requests
url = 'https://www.nseindia.com/content/indices/ind_nifty50list.csv'
s = requests.get(url).content
df = pd.read_csv(io.StringIO(s.decode('utf-8')))
df.Symbol
>>> 0 ADANIPORTS
>>> 1 ASIANPAINT
>>> 2 AXISBANK
>>> 3 BAJAJ-AUTO
>>> 4 BAJFINANCE
>>> 5 BAJAJFINSV
>>> 6 BPCL
>>> 7 BHARTIARTL
>>> 8 INFRATEL
>>> 9 CIPLA
>>> 10 COALINDIA
>>> 11 DRREDDY
>>> 12 EICHERMOT
>>> 13 GAIL
>>> 14 GRASIM
>>> 15 HCLTECH
>>> 16 HDFCBANK
>>> 17 HEROMOTOCO
>>> 18 HINDALCO
>>> 19 HINDPETRO
>>> 20 HINDUNILVR
>>> 21 HDFC
>>> 22 ITC
>>> 23 ICICIBANK
>>> 24 IBULHSGFIN
>>> 25 IOC
>>> 26 INDUSINDBK
>>> 27 INFY
>>> 28 JSWSTEEL
>>> 29 KOTAKBANK
>>> 30 LT
>>> 31 M&M
>>> 32 MARUTI
>>> 33 NTPC
>>> 34 ONGC
>>> 35 POWERGRID
>>> 36 RELIANCE
>>> 37 SBIN
>>> 38 SUNPHARMA
>>> 39 TCS
>>> 40 TATAMOTORS
>>> 41 TATASTEEL
>>> 42 TECHM
>>> 43 TITAN
>>> 44 UPL
>>> 45 ULTRACEMCO
>>> 46 VEDL
>>> 47 WIPRO
>>> 48 YESBANK
>>> 49 ZEEL
>>> Name: Symbol, dtype: object
答案 1 :(得分:0)
需要相同的实用程序。遵循建议
时出现以下错误df = pd.read_csv(io.StringIO(s.decode('UTF-8')))
文件“”,第1行,在 df = pd.read_csv(io.StringIO(s.decode('UTF-8')))
AttributeError:“响应”对象没有属性“解码”