[問題] 獲取證交所即時股價
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
→
05/09 12:55, , 1F
05/09 12:55, 1F
→
05/09 13:33, , 2F
05/09 13:33, 2F
→
05/09 13:33, , 3F
05/09 13:33, 3F
→
05/09 13:35, , 4F
05/09 13:35, 4F
→
05/09 14:50, , 5F
05/09 14:50, 5F
→
05/09 15:13, , 6F
05/09 15:13, 6F
→
05/09 15:13, , 7F
05/09 15:13, 7F
→
05/09 15:13, , 8F
05/09 15:13, 8F
→
05/09 15:13, , 9F
05/09 15:13, 9F
推
05/09 21:42, , 10F
05/09 21:42, 10F
推
05/09 22:50, , 11F
05/09 22:50, 11F
→
05/09 22:53, , 12F
05/09 22:53, 12F
推
05/09 23:38, , 13F
05/09 23:38, 13F
推
05/10 09:34, , 14F
05/10 09:34, 14F
→
05/10 09:34, , 15F
05/10 09:34, 15F
→
05/10 13:06, , 16F
05/10 13:06, 16F
推
05/10 20:00, , 17F
05/10 20:00, 17F
→
05/10 20:01, , 18F
05/10 20:01, 18F
Python 近期熱門文章
PTT數位生活區 即時熱門文章