2017-03-01 24 views
0

私は、スウェーデンの企業やPython、Yahooの財務に関するデータを取得しようとしています。私はそのようKIND-SDB.STとしていくつかのティッカーに着くとき、私は株価データリクエストが拒否された後、Yahoo financeに問い合わせを続ける

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 

は、どのように私は、このデータを奪うためヤフーファイナンスを入手できますか取得し、私は、どのように行うことができない場合、私はたとえティッカーのリストの残りの部分を続行します1つは壊れていますか?

私の小さなスクリプトは次のようになります。エラーが発生した後、APIを照会し続けるには

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('[email protected]') 
    numb+=1 

numb = 1 
for i in my_stocks: 

    stockplotter(i, start, end, numb) 
    numb += 1 

答えて

0

、あなたは例外を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('[email protected]') 
関連する問題