2017-07-25 2 views
-1

Hallo ich versuche, einige JSON, alles ist in Ordnung, aber manchmal Anfrage geht schief, kann Site-Stack oder Closing-Verbindung für mich, weil ich json alle 15 min.Python Anfrage Stacks

-Code hier:

def request_coins(config): 
    coins = None 
    print(str(datetime.now()) + ' - REQUESTING Coins') 
    while coins is None: 
     try: 
      coins = (requests.get(url=str(config['UrlPath']['url']) + str(config['UrlPath']['userrates']))) 
     except: 
      print(str(datetime.now()) + " - Site didn't respond. Reconnecting in 10 sec") 
     time.sleep(10) 
    if coins is not None: 
     coins = coins.json()['coins'] 
     print(str(datetime.now()) + ' - Coins received correctly') 
return coins 

Probleme ist, dass try - catch nicht in meinem Fall arbeiten. Anfrage Stapel in print(str(datetime.now()) + ' - REQUESTING Coins') und ich weiß empfangen keine Ausnahme und Nachricht

print(str(datetime.now()) + " - Site didn't respond. Reconnecting in 10 sec")

cmd Wie ich Code verstanden stapelt bei try: coins = (requests.get(url=str(config['UrlPath']['url']) + str(config['UrlPath']['userrates'])))

und gehen nicht einmal zu except:

Beliebig Idee, wie zu beheben?

+0

wird der Code-Struktur korrekt für 'zu erhalten, wenn Münzen ist nicht None:'? Weil Python-Code auf Ihrer Registerkarte basiert. – Marprin

+0

ja, sorry miss tab wenn ich hier im original code geschrieben habe ist alles in ordnung – Hellbea

+0

ich denke dein 'requests.get' ist gerade beschäftigt, ohne einen fehler zu erzeugen ... also solltest du in' requests' mit 'try - except' kombinieren . Hast du [this] (https://stackoverflow.com/questions/16511337/correct-way-to-try-except-using-python-requests-module) gesehen? Vielleicht könnte der zweite Teil der angenommenen Antwort mit dem "Response.raise_for_status" hilfreich sein? – nostradamus

Antwort

0

brauchen nur timeout hinzufügen Anfrage

+0

Könnten Sie ein bisschen mehr Details hinzufügen, um Ihre Antwort nützlicher zu machen? –