這次的教學會用到兩個套件
- request
- pandas
- StringIO(內建)
- datetime
請安裝這三個套件
我們常常瀏覽網站中,如果需要下載資料的話。
會對文字或圖片點一個連結點了之後就會開始下載檔案。
其實這樣的方式的原理是讓你的瀏覽器跳到其他的頁面,讓其他頁面對你的電腦輸入檔案進而下載。當然的,用request一樣可以對這些檔案進行抓取。
但當然的,不可能python會看得懂每種檔案並進行處理。所以我們會用到一個叫做"pandas"的套件讓電腦讀資料檔案並且做分析
接下來我們就來示範一下抓取股票資料(csv檔)的即時資訊。
接下來,我們來抓一些股票的資訊好了。
其實提供金融股票資訊的網站有很多,
其中在yahoo就有提供下載全球股票的資訊,但它好像只有提供下載csv檔案欸。所以我們就來處理csv檔吧~
在pandas套件中,有一個可以讀取許多檔案格式的功能,所以我們來用這個功能來讀取csv檔資料
但在處理資料之前,我們還是來看看網頁要怎麼抓資料好了
它的網址格式如下:
https://query1.finance.yahoo.com/v7/finance/download/{股票代號}?period1={開始時間}&period2={結束時間}&interval=1d&events=history&includeAdjustedClose=true
其中我們會用到的通常只會有我大括號裡面要設定的三個變數
股票代號的格式為:代號.地區
開始時間為:1970年到現在的總秒數
結束時間為:1970年到現在的總秒數
當然以我們自己的人腦要算秒數難度超級高,所以我們會用datetime套件來作時間運算
大概就是這樣跟之前的爬蟲大同小異所以我直接在程式碼裡面進行註解你可以嘗試更改程式碼看執行出來的結果,我相信你會更加了解程式內部的運作