close

我們常常用python來讀取文件, 例如txt, csv等等~

其實python也可以讀取內存的資料!

那今天要筆記的東西是StringIO, 也就是從內存中讀取string

順便紀錄怎麼抓證交所的資料~~

先從台灣證券交易所下載一些資料

http://www.twse.com.tw/zh/

未命名.png

然後點選全部(不含權證....................)

未命名.png

在按下查詢前, 先用檢查元素, 找到"網路", 再按下查詢, 可以找到MI_INDEX開頭的檔案

未命名.png

點他會在右邊出現一串請求URL, 把這一串網址複製下來, 然後把其中json改成csv

未命名.png

如果你貼上網址後, 按下enter就會發現有一個csv檔被下載了~

開始我們的python

import requests
res = requests.get('http://www.twse.com.tw/exchangeReport/MI_INDEX?response=csv&date=20190121&type=ALLBUT0999&_=1548084070350')
print(res.text)

未命名.png

那StringIO要怎麼用呢? 我們用前五百筆就好~

import requests
res = requests.get('http://www.twse.com.tw/exchangeReport/MI_INDEX?response=csv&date=20190121&type=ALLBUT0999&_=1548084070350')

from io import StringIO

stri = StringIO(res.text[:500])

for i in stri :
        print(i)

未命名.png

除了是讀取記憶體以外, 好像沒有差別喔?!

 

.

 

 

 

 

 

arrow
arrow
    全站熱搜

    張郎屋 發表在 痞客邦 留言(0) 人氣()