Python爬蟲:爬取富邦的選擇權報價表格
前言
今天將會分享如何使用python爬取富邦的選擇權報價。
在開始爬蟲時都要先研究 目標是誰?結構是甚麼?我要什麼資料?希望最後的資料長怎麼樣? 在腦中有些許畫面後,我們就可以開始了!!!
將學習到
- requests存取網站結構
- BeautifulSoup整理結構
- pandas爬取選擇權的表格
環境設定
win10 Anaconda的jupyter(6.0.3)
使用套件
import requests
import bs4
import pandas as pd
開始作業
步驟1.檢查目標
可以先點開該網站並按滑鼠右鍵”檢查”,先快速看過此網站結構。
步驟2.取的網站結構
#目標網站
url ="https://fubon-ebrokerdj.fbs.com.tw/Z/ZM/ZMJ/ZMJ.djhtm"#取得結構
res = requests.get(url)#更改資料的字元編碼
res.encoding = 'big-5'
步驟3:BeautifulSoup找到表格並用pandas將表格變成DataFrame
#使用bs4的BeautifulSoup
soup = bs4.BeautifulSoup(res.text,"html.parser")#找到table
data = soup.select('table')[2]#使用read_html建立DataFrame
df = pd.read_html(data.prettify())
dfs = df[1]
步驟4:pandas將DataFrame整理成可用資料
#刪減不要的row(index)
dfs = dfs.drop(0)
dfs = dfs.drop(1)#重新命名columns
dfs.columns=[u"履約價",u"種類",u"開盤",u"最高",u"最低",u"收盤價",u"結算價",u"漲跌",u"漲跌%",u"成交量",u"未平倉",u"delta",u"gamma",u"theta",u"vega",u"隱含波動率%"]#因流水號經過刪減所以序號有變,所以重設流水號
dfs = dfs.reset_index(drop=True)
成果展示
完整程式碼
小結
雖然程式碼不多,但在製作過程中都是需要一試在試的,雖然有構想要如何整理,但對於一些函數還是會忘記如何使用,所以還是會去網上搜尋關鍵字,絕對不要因為幾次的失敗就放棄,請抱持著學會就進步的想法一同進步,如果你對於上述內容有更好的意見歡迎訊問。
希望這次簡單的分享可以幫助你。