我正在尝试获取一些瑞典公司的数据,以及Python和雅虎财经的数据。当我到达像KIND-SDB.ST这样的报价器时,我会得到
RemoteDataError: Unable to read URL: http://ichart.finance.yahoo.com/table.csv?a=1&ignore=.csv&s=KIND-SDB.ST&b=1&e=1&d=2&g=d&f=2017&c=2017我如何让雅虎财经获取这些数据,如果我不能,我如何继续处理其余的股票代码列表,即使其中一个是腐败的?
我的小脚本如下所示:
start = datetime.date(2017,2,1)
end = datetime.date.today()
my_stocks = ['NEPA.ST','EVO.ST','KIND-SDB.ST','EVO.ST','ATCO-B.ST','KINV-B.ST','NDA-SEK.ST','SAND.ST','GRNG.ST','JM.ST','SAAB-B.ST','STAR-B.ST','ASSA-B.ST','INVE-B.ST','INDU-C.ST','SKF-B.ST']
pylab.rcParams['figure.figsize'] = (10, 4) # Change the size of plots
def stockplotter(ticker,start,end,numb):
stock = pdr.get_data_yahoo(ticker,start,end)
plt.figure(numb)
stock["Adj Close"].plot(grid = True)
plt.title(ticker)
plt.ylabel('SEK@close')
numb+=1
numb = 1
for i in my_stocks:
stockplotter(i, start, end, numb)
numb += 1发布于 2017-03-02 04:29:58
若要在抛出错误后继续查询接口,需要对异常执行catch and handle操作。
def stockplotter(ticker,start,end,numb):
try:
stock = pdr.get_data_yahoo(ticker,start,end)
except RemoteDataError:
pass
plt.figure(numb)
stock["Adj Close"].plot(grid = True)
plt.title(ticker)
plt.ylabel('SEK@close')https://stackoverflow.com/questions/42540114
复制相似问题