設為首頁收藏本站

艾歐踢論壇

 找回密碼
 立即註冊

QQ登錄

只需一步,快速開始

搜索
熱搜: 活動 交友 discuz
查看: 268|回復: 0
打印 上一主題 下一主題

台灣證券交易所API(1)

[複製鏈接]
跳轉到指定樓層
樓主
發表於 2023-4-20 15:28:35 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
http://www.twse.com.tw/exchangeReport/STOCK_DAY?response=json&date=20160501&stockNo=2330


比較重要的地方是date這個參數, 基本上你給的值一定要是yyyyMMdd的形式, 但是真正作用的只有yyyy與MM,
因為他會把這段request解讀成你想要看stockNo股票在yyyy年MM月的紀錄, 所以dd基本上沒有太大意義, 但卻是不可少的部分.
  1. import requests
  2. import time


  3. TWSE_URL = 'http://www.twse.com.tw/exchangeReport/STOCK_DAY?response=json'


  4. def get_web_content(stock_id, current_date):
  5.     resp = requests.get(TWSE_URL + '&date=' + current_date + '&stockNo=' + stock_id)
  6.     if resp.status_code != 200:
  7.         return None
  8.     else:
  9.         return resp.json()


  10. def get_data(stock_id, current_date):
  11.     info = list()
  12.     resp = get_web_content(stock_id, current_date)
  13.     if resp is None:
  14.         return None
  15.     else:
  16.         if resp['data']:
  17.             for data in resp['data']:
  18.                 record = {
  19.                     '日期': data[0],
  20.                     '開盤價': data[3],
  21.                     '收盤價': data[6],
  22.                     '成交筆數': data[8]
  23.                 }
  24.                 info.append(record)
  25.         return info


  26. def main():
  27.     stock_id = '2330'
  28.     current_date = time.strftime('%Y%m%d')
  29.     current_year = time.strftime('%Y')
  30.     current_month = time.strftime('%m')
  31.     print('Processing data for %s %s...' % (current_year, current_month))
  32.     get_data(stock_id, current_date)
  33.     collected_info = get_data(stock_id, current_date)
  34.     for info in collected_info:
  35.         print(info)


  36. if __name__ == '__main__':
  37.     main()
複製代碼
Processing data for 2023 04...
{'日期': '112/04/06', '開盤價': '530.00', '收盤價': '530.00', '成交筆數': '19,144'}
{'日期': '112/04/07', '開盤價': '535.00', '收盤價': '531.00', '成交筆數': '10,285'}
{'日期': '112/04/10', '開盤價': '533.00', '收盤價': '529.00', '成交筆數': '11,698'}
{'日期': '112/04/11', '開盤價': '522.00', '收盤價': '524.00', '成交筆數': '24,432'}
{'日期': '112/04/12', '開盤價': '523.00', '收盤價': '520.00', '成交筆數': '37,158'}
{'日期': '112/04/13', '開盤價': '515.00', '收盤價': '510.00', '成交筆數': '64,834'}
{'日期': '112/04/14', '開盤價': '516.00', '收盤價': '516.00', '成交筆數': '19,962'}
{'日期': '112/04/17', '開盤價': '519.00', '收盤價': '520.00', '成交筆數': '17,444'}
{'日期': '112/04/18', '開盤價': '518.00', '收盤價': '515.00', '成交筆數': '17,087'}
{'日期': '112/04/19', '開盤價': '517.00', '收盤價': '510.00', '成交筆數': '43,281'}
{'日期': '112/04/20', '開盤價': '512.00', '收盤價': '513.00', '成交筆數': '16,612'}


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 轉播轉播 分享分享 分享淘帖
回復

使用道具 舉報

您需要登錄後才可以回帖 登錄 | 立即註冊

本版積分規則

小黑屋|Archiver|手機版|艾歐踢創新工坊    

GMT+8, 2024-5-16 21:02 , Processed in 0.200873 second(s), 18 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回復 返回頂部 返回列表