2016-10-09 5 views
0

Ich hoffe, es geht dir gut. Ich benutze Python 2.7 und neu darin. Ich versuche, Yahoo Finance API zu verwenden, um Informationen von den Aktien zu bekommen, hier ist mein Code:Python 2.7 Yahoo Finanzen Keine Definition gefunden

from yahoo_finance import Share 
yahoo = Share('YHOO') 
print yahoo.get_historical('2014-04-25', '2014-04-29') 

Dieser Code thoug arbeitet einmal von 4 Versuche, die anderen 3 mal gibt mir diese Fehler:

YQL Query error: Query failed with error: No Definition found for Table yahoo.finance.quote 

Gibt es trotzdem einen Fehler zu beheben, damit der Code zu 100% funktioniert? Danke. Herzliche Grüße

Antwort

1

Dies ist ein serverseitiger Fehler. Der query.yahooapis.com-Dienst scheint von einem Cluster von Computern verarbeitet zu werden, und einige dieser Computer scheinen falsch konfiguriert zu sein. Dies könnte ein vorübergehendes Problem sein.

Ich sehe den gleichen Fehler, wenn die API direkt mit curl Zugriff auf: in einer Schleife

$ curl "http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20yahoo.finance.quote%20where%20symbol%20%3D%20%22YHOO%22&format=json&env=store%3a//datatables.org/alltableswithkeys" 
{"error":{"lang":"en-US","description":"No definition found for Table yahoo.finance.quote"}} 

Anders als erneuten Versuch, gibt es keine Möglichkeit, dies auf der Python Seite zu beheben:

data = None 
for i in range(10): # retry 10 times 
    try: 
     yahoo = Share('YHOO') 
     data = yahoo.get_historical('2014-04-25', '2014-04-29') 
     break 
    except yahoo_finance.YQLQueryError: 
     continue 
if data is None: 
    print 'Failed to retrieve data from the Yahoo service, try again later' 
+0

Dank Marijin! Also schalte ich es in eine Endlosschleife, bis es mit try und excert funktioniert? –

+0

@AmatoIlCiabattaro: genau, vielleicht mit einer Begrenzung der Anzahl der Wiederholungen. –

+0

Danke Martjin! es funktionierte :) –

Verwandte Themen