2017-07-13 71 views
1

我遇到了我的程序凍結問題,我認爲這是由於沒有連接到Poloniex服務器。如何連接urlopen請求直到連接建立?繼續嘗試urlopen,直到連接建立 - Python 2

以下是我有:

elif(command == "returnOrderBook"): 
    try: 
     ret = urllib2.urlopen(urllib2.Request('https://poloniex.com/public?command=' + command + '&currencyPair=' + str(req['currencyPair']))) 
     return json.loads(ret.read()) 
    except: 
     print('no connection') 
    else: return None 

,並在主:

jsn = None 

count = 0; 
for pair in pairs: 

    while(jsn == None): 
     jsn = p.returnMarketTradeHistory (pair) 
     if(jsn == None): 
      print('jsn failed')  
      sleep(0.3) 

我檢查了計時和我似乎沒有被打破,從Poloniex任何過多的數據請求限制。

+0

我現在有同樣的問題,如果我能拿出任何東西我會在這裏發表一個答案...... – jamzsabb

回答

0

這似乎是爲我工作。我增加了等待時間,以便它不會在知識產權被禁止之前轟炸現場。

wait = 60 
    while True: 
     try: 
      html = urlopen('http://www.example.com') 
      wait = 60 
      break 
     except: 
      print('Failed to open page') 
      time.sleep(random.sample(range(wait, wait * 2), 1)[0]) 
      wait = (wait + 300) * 2 
      pass 
相關問題