導讀
Python 語言作為網路資料爬蟲好工具,在理解 Python 的 list 資料結構後,我們已經有能力實作入門款的自動資料抓取程式,將你感興趣的資料抓下來進行保存、分析。
以下我們以抓取「比特幣(Bitcoin)」的實時價格作為入門目標。
目標
階段性目標
實作步驟
輸入以下程式碼資料抓取前置作業:
import requests
以 jupyter-notebook 作為示範,此段落的程式碼截圖。
接著要找尋提供比特幣時價的平台,此處教學選用coindesk.com提供的比特幣查詢API:
response = requests.get("https://api.coindesk.com/v1/bpi/currentprice.json")
data = response.json()
bc = locale.atof(data["bpi"]["USD"]["rate_float"])
以 jupyter-notebook 作為示範,此段落的程式碼截圖。
print("比特幣當前的價格為:USD$", bc)
以上已經讓這個資料爬蟲程式取得我們的目標「比特幣價格」,若想持續追蹤不斷更新的比特幣價格,則可以使用「for loop」或「while loop」進行,將歷史價格繪製為線圖,可參見【Python】 資料爬蟲及線圖繪製 - 線性趨勢圖。
本篇剩餘的內容,則稍微改寫本程式,做成一個簡易互動的「猜比特幣價格」程式,簡單的加上 if條件判斷及絕對值數學函式abs():
guess = float(input("猜猜目前比特幣的價格是多少?(單位:美元) "))
if guess != bc:
diff = abs(guess - float(bc))
print("實際上比特幣的價格為 ", bc,"美元,和你預估的差 ", diff, "美元")
else:
print("賓果!就是 ", bc, "美元")
以 jupyter-notebook 示範,此段落程式碼的執行結果。
沒有留言:
張貼留言