OOber 疫 資料來源抓取教學

Evan Chiu
Aiii
Published in
4 min readApr 18, 2020

OOber 疫 LINE QR code ,歡迎掃碼加入,啾咪

點擊下方圖文選單按鈕可觸發不同功能,例如”新冠肺炎快訊“ ,可見台灣資訊,

只要在聊天視窗內打上想知道疫情的國家名稱就可以囉,

打上#國家,可見旅遊警示,但現在都是三級,囧

也可以分享給好友或是讓OOber 疫加入群組,群組內有人詢問各國狀況,OOber 疫也會回答喲,

以上為OOber 疫 使用方法,接下來介紹如何爬取資料。

OOber 疫資料來源為

本篇為大家簡單介紹如何使用 python 套件 requests 與 beautifulSoup 抓取結構簡單的網頁數據,本方法只適用於結構簡單的網頁

首先用肉眼找到網頁上所需抓取的資訊,結構簡單與不簡單的網頁簡易區分可用以下方法,在 Chrome按下右鍵選擇 “檢視網頁原始碼”,利用 ctrl +f 搜尋看看能不能輕易找到你要的資訊,

看起來是容易找到的我們需要的國家以及確診人數等等數據,下面是結構較為複雜的網頁範例,爬取這種網頁不在本篇討論範圍之內,有興趣讀者可自行嘗試https://gisanddata.maps.arcgis.com/apps/opsdashboard/index.html#/bda7594740fd40299423467b48e9ecf6

接下來示範如何抓取網頁資料,找到我們所需的資料之後,順勢上拉尋找資料所在的 class

找到了class名稱之後將其複製貼上到程式碼內,

利用 for 讀取前面幾個元素,可以發現順利的讀出了網頁上第一行的數據,這時感覺可以直接寫個迴圈直接將所有資料讀取完畢,但發現這招只適用於第一行的 World 情況才能讀取數據

其他的國家要多寫一層contents才能讀取到,上述方法是經過幾次簡單試錯所得到的結果,讀者可發揮自己強大的程式能力寫出更簡潔的程式碼,以下是最後爬取資料的部分結果,

處理好之後將此程式部署至雲端(GCP or Heroku 等等)產生的api網址就是我們OOber疫的資料來源,附上所有程式碼

總結:網路的世界上充滿著有用的資料讓我們免費取用,知道正確處理這些資料的方法之後,就能更加有效率地探索網路世界!

--

--

Evan Chiu
Aiii
Writer for

任職於AIII.AI的資料工程師,喜歡AI相關知識,對天文及歐洲歷史也小有興趣