為什麼這篇證交所api json鄉民發文收入到精華區:因為在證交所api json這個討論話題中,有許多相關的文章在討論,這篇最有參考價值!作者a856479 (thebelief)看板Python標題[問題] 獲取證交所即時股價時間Tue...
Hi 大家好,以下是我的問題
目前正在嘗試從證交所取得即時股票資訊
但有時候可以成功,有時候會失敗...
我找不出錯誤的原因,希望各位可以幫忙
=====以下是程式碼=====
targets = ['6188', '5478', '6488'] #關注的股票代碼
endpoint = 'http://mis.twse.com.tw/stock/api/getStockInfo.jsp'
timestamp = int(time.time() * 1000 + 1000)
channels = '|'.join('otc_{}.tw'.format(target_otc) for target_otc in targets)
query_url = '{}?&ex_ch={}&json=1&delay=0&_={}'.format(endpoint, channels,
timestamp)
headers = {'Accept-Language': 'zh-TW'}
req = requests.session()
req.get('http://mis.twse.com.tw/stock/index.jsp', headers=headers)
response = req.get(query_url)
content = json.loads(response.text) # 註解1
data = content['msgArray'] # 需要的訊息被包在'msgArray'裡面
print(data)
=====程式碼結束=====
當我執行以上程式,有時候可以成功獲取資訊
但是常常失敗的結果是顯示:
data_otc = content_otc['msgArray']
KeyError: 'msgArray'
於是我試著印出 #註解1 的content:
只剩下{'userDelay': 500, 'rtmessage': '0', 'rtcode': '0000'}
'msgArray'的確消失了.
我找不出是什麼原因會導致失敗,希望各位可以幫我解惑...
謝謝各位耐心閱讀我的問題!
*補充說明一下,如果有成功 印出來的data會像:
{'msgArray': (股票資訊), 'userDelay': 5000, 'rtmessage': 'OK', 'rtcode':
'0000'}
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 101.139.148.49
※ 文章網址: https://www.ptt.cc/bbs/Python/M.1494303664.A.BDA.html
※ 編輯: a856479 (101.139.148.49), 05/09/2017 12:51:34